Hi,
The Asterisk CallerID plugin continues !
Based on Troky's work I decided to complete his announced features and added some new ones.
This is my first attempt to code for the great MediaPortal, so don't be too hard, if things do not work as intended.
How it works:
A incoming call will display a message with CallerName, CID and optional picture (if it exists).
The plugin connects with the Asterisk via the Asterisk Call Manager API.
How to install:
Copy the DLL's 'ACID.dll' and 'Asterisk.NET.dll' into the '\plugins\process' folder.
How to configure:
Asterisk:
In manager.conf we need a user - e.g. media:
[media] // -- in AsteriskCID: Username:
secret = pwmedia // -- in AsteriskCID: Secret:
deny=0.0.0.0/0.0.0.0
permit=192.168.0.1/255.255.255.0 // -- the IP address from media pc running MediaPortal
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user
Also make sure that the general settings do exist and the API is enabled:
[general]
enabled = yes
port = 5038 // -- in AsteriskCID: the field behind Asterisk server IP:
bindaddr = 0.0.0.0
Trixbox users can go to FreePBX->Tools->Asterisk API to create a user.
Note: the settings require Asterisk to be restarted, Trixbox users don't need a restart.
AsteriskCID plugin:
Asterisk server IP:
the IP address of the Asterisk server and the port configured in manager.conf
Username:
the user name configured in manager.conf (Asterisk)
Secret:
the secret configured in manager.conf (Asterisk)
Debug Level:
log level 0=info, 2=details, 3=debug
Incoming channel/trunk: e.g.: SIP/ISDN123
This can be used to filter incoming calls to show a message only, if it came in at that trunk.
Each channel/trunk must be configured in one line.
No entry will allow messages on all trunks.
Internal extensions: e.g.: SIP/30
This can be used to filter messages on internal calls and outgoing calls
Each extension must be configured in one line.
No entry will allow messages on all extensions.
Stop media when call detected:
check, if media should be paused on incomming calls
Resume media after message closed:
check, if media should resume on call established -or-
Resume media after call released:
check, if media should resume after call is finished
Notify timeout:
Timeout (seconds) after which message box is closed and media is resumed
This may override the 'resume' setting (whichever occurs first), 0 = NO timeout.
Remove leading digit
removes the first digit from the CID if it matches the configured digit (0 or 9). For an Asterisk behind setup.
Hint:
Audio may resume delayed (3-8sec.) while video is resumed immediately. Still not found the cause, it seems to be an MP issue.
Try it and send me your findings.
The configuration is stored in MediaPortal.xml. If you want to edit trunks or extensions there, make sure they are seperated by ', ' (comma and space). Do not edit the secret entry here - it is encoded and may cause an exception.
Have fun and report any found issues or wishes.
Edit:
v0.2.1.1 Message lock fixed, message 'Connected to' now configurable - see ReleaseNotes.txt.
v0.2.1.2 Connected message now also displays caller details
v0.2.1.4 for RC2
GregorV
The Asterisk CallerID plugin continues !
Based on Troky's work I decided to complete his announced features and added some new ones.
This is my first attempt to code for the great MediaPortal, so don't be too hard, if things do not work as intended.
How it works:
A incoming call will display a message with CallerName, CID and optional picture (if it exists).
The plugin connects with the Asterisk via the Asterisk Call Manager API.
How to install:
Copy the DLL's 'ACID.dll' and 'Asterisk.NET.dll' into the '\plugins\process' folder.
How to configure:
Asterisk:
In manager.conf we need a user - e.g. media:
[media] // -- in AsteriskCID: Username:
secret = pwmedia // -- in AsteriskCID: Secret:
deny=0.0.0.0/0.0.0.0
permit=192.168.0.1/255.255.255.0 // -- the IP address from media pc running MediaPortal
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user
Also make sure that the general settings do exist and the API is enabled:
[general]
enabled = yes
port = 5038 // -- in AsteriskCID: the field behind Asterisk server IP:
bindaddr = 0.0.0.0
Trixbox users can go to FreePBX->Tools->Asterisk API to create a user.
Note: the settings require Asterisk to be restarted, Trixbox users don't need a restart.
AsteriskCID plugin:
Asterisk server IP:
the IP address of the Asterisk server and the port configured in manager.conf
Username:
the user name configured in manager.conf (Asterisk)
Secret:
the secret configured in manager.conf (Asterisk)
Debug Level:
log level 0=info, 2=details, 3=debug
Incoming channel/trunk: e.g.: SIP/ISDN123
This can be used to filter incoming calls to show a message only, if it came in at that trunk.
Each channel/trunk must be configured in one line.
No entry will allow messages on all trunks.
Internal extensions: e.g.: SIP/30
This can be used to filter messages on internal calls and outgoing calls
Each extension must be configured in one line.
No entry will allow messages on all extensions.
Stop media when call detected:
check, if media should be paused on incomming calls
Resume media after message closed:
check, if media should resume on call established -or-
Resume media after call released:
check, if media should resume after call is finished
Notify timeout:
Timeout (seconds) after which message box is closed and media is resumed
This may override the 'resume' setting (whichever occurs first), 0 = NO timeout.
Remove leading digit
removes the first digit from the CID if it matches the configured digit (0 or 9). For an Asterisk behind setup.
Hint:
Audio may resume delayed (3-8sec.) while video is resumed immediately. Still not found the cause, it seems to be an MP issue.
Try it and send me your findings.
The configuration is stored in MediaPortal.xml. If you want to edit trunks or extensions there, make sure they are seperated by ', ' (comma and space). Do not edit the secret entry here - it is encoded and may cause an exception.
Have fun and report any found issues or wishes.
Edit:
v0.2.1.1 Message lock fixed, message 'Connected to' now configurable - see ReleaseNotes.txt.
v0.2.1.2 Connected message now also displays caller details
v0.2.1.4 for RC2
GregorV