466357f5c2
This revision of DAHDI-Tools is the base revision for the switch to git. git-svn-id: http://svn.astersk.org/svn/dahdi/tools/tools/trunk@9159
80 lines
1.7 KiB
Perl
80 lines
1.7 KiB
Perl
package Dahdi;
|
|
#
|
|
# Written by Oron Peled <oron@actcom.co.il>
|
|
# Copyright (C) 2007, Xorcom
|
|
# This program is free software; you can redistribute and/or
|
|
# modify it under the same terms as Perl itself.
|
|
#
|
|
# $Id$
|
|
#
|
|
use strict;
|
|
use Dahdi::Span;
|
|
|
|
=head1 NAME
|
|
|
|
Dahdi - Perl interface to Dahdi information
|
|
|
|
This package allows access from Perl to information about Dahdi
|
|
hardware and loaded Dahdi devices.
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
# Listing channels in analog spans:
|
|
use Dahdi;
|
|
# scans system:
|
|
my @spans = Dahdi::spans();
|
|
for my $span (@spans) {
|
|
next if ($span->is_digital);
|
|
$span->num. " - [". $span->type ."] ". $span->name. "\n";
|
|
for my $chan ($span->chans) {
|
|
print " - ".$chan->num . " - [". $chan->type. "] ". $chan->fqn". \n";
|
|
}
|
|
}
|
|
=cut
|
|
|
|
our $virt_base;
|
|
our $proc_dahdi_base;
|
|
our $proc_xpp_base;
|
|
our $proc_usb_base;
|
|
our $sys_base;
|
|
|
|
=head1 spans()
|
|
|
|
Returns a list of span objects, ordered by span number.
|
|
|
|
=cut
|
|
|
|
sub spans() {
|
|
my @spans;
|
|
|
|
-d $proc_dahdi_base or return ();
|
|
foreach my $zfile (glob "$proc_dahdi_base/*") {
|
|
next unless ($zfile =~ m{^$proc_dahdi_base/\d+$});
|
|
my $span = Dahdi::Span->new($zfile);
|
|
push(@spans, $span);
|
|
}
|
|
@spans = sort { $a->num <=> $b->num } @spans;
|
|
return @spans;
|
|
}
|
|
|
|
=head1 ENVIRONMENT
|
|
|
|
If C<DAHDI_VIRT_TOP> is set in the environment, it will be considered
|
|
as a path to a directory that holds a dump (copy) of all the required
|
|
files from /proc and /sys . You can generate that directory using the
|
|
script C<build_tools/dump_sys_state> .
|
|
|
|
=head1 SEE ALSO
|
|
|
|
Span objects: L<Dahdi::Span>.
|
|
|
|
Dahdi channels objects: L<Dahdi::Chan>.
|
|
|
|
Dahdi hardware devices information: L<Dahdi::Hardware>.
|
|
|
|
Xorcom Astribank -specific information: L<Dahdi::Xpp>.
|
|
|
|
=cut
|
|
|
|
1;
|