Debian 8 und asterisk 13.1.1

Fehlermeldung: error: ‘pjsip_transaction’ has no member named ‘mutex’

Lösung:

1. Compile & install pjsip as normal.
2. Run „configure“ for Asterisk as normal
3. Run „Make menuselect“ for Asterisk as normal
4. BEFORE running „make“ to compile Asterisk, locate „autoconfig.h“ and open it with vi or nano. It will be in the „include/asterisk/“ folder.
Find the 2 lines:

/* Define to 1 if PJPROJECT has the PJSIP Transaction Group Lock Support feature. */
/* #undef HAVE_PJ_TRANSACTION_GRP_LOCK */

Change the second line to:

#define HAVE_PJ_TRANSACTION_GRP_LOCK 1

5. Save the file
6. You should be able to run „make“ successfully now.

source: http://forums.asterisk.org/viewtopic.php?f=1&t=90497

Adwords > http://domm-software-point.rakuten-shop.de <

PJSIP_HEADER() asterisk Beispiele

Beispiele:

 

Set 'somevar' to the value of the 'To' header.
exten => 1,1,Set(somevar=PJSIP_HEADER(read,To))
Set 'somevar' to the value of the 'From' header. 
exten => 1,1,Set(somevar=PJSIP_HEADER(read,From))
Set 'via2' to the value of the 2nd 'Via' header.
exten => 1,1,Set(via2=PJSIP_HEADER(read,Via,2))
Add an 'X-Myheader' header with the value of 'myvalue'.
exten => 1,1,Set(PJSIP_HEADER(add,X-MyHeader)=myvalue)
Add an 'X-Myheader' header with an empty value.
exten => 1,1,Set(PJSIP_HEADER(add,X-MyHeader)=)
Update the value of the header named 'X-Myheader' to 'newvalue'.
!!! 'X-Myheader' must already exist or the call will fail !!!
exten => 1,1,Set(PJSIP_HEADER(update,X-MyHeader)=newvalue)
Remove all headers whose names exactly match 'X-MyHeader'.
exten => 1,1,PJSIP_HEADER(remove,X-MyHeader)
Remove all headers that begin with 'X-My'.
exten => 1,1,PJSIP_HEADER(remove,X-My*)
Remove all previously added headers.
exten => 1,1,PJSIP_HEADER(remove,*)
Quelle:
https://reviewboard.asterisk.org/r/2858/diff/3/

 

sipgate und asterisk pjsip.conf

 

pjsip.conf Beispiel …

[transport-udp]
type=transport
protocol=udp
bind=0.0.0.0:5060

 

[sipgatetrunk]
type=registration
transport=transport-udp
outbound_auth=sipgatetrunk_auth
server_uri=sip:sipgate.de
client_uri=sip:dein_sipgate_accountname@sipgate.de
contact_user=7000 ; auf den App. 7000 wird es dann klingeln
retry_interval=60
forbidden_retry_interval=600
expiration=3600

 

[sipgatetrunk_auth]
type=auth
auth_type=userpass
password=dein_sipgate_passwort
username=dein_sipgate_accountname

 

[sipgatetrunk]
type=aor
contact=sip:sipgate.de:5060

 

[sipgatetrunk]
type=endpoint
transport=transport-udp
context=from-external
disallow=all
allow=alaw
from_domain=sipgate.de
;;;; nicht einschalten !!! from_user=dein_sipgate_accountname !!! wird mit Set(CALLERID(num)=dein_sipgate_accountname im dialplan uebergeben
outbound_auth=sipgatetrunk_auth
aors=sipgatetrunk

 

[sipgatetrunk]
type=identify
endpoint=sipgatetrunk
match=sipgate.de

 

extensions.conf
Beispiel für outgoing ...
exten => _XXXXX.,1,Set(CALLERID(name)=deine_callerID)
exten => _XXXXX.,n,Set(CALLERID(num)=dein_sipgate_accountname) ; !!!!!!!!!!!!!!
exten => _XXXXX.,n,Dial(PJSIP/${EXTEN}@sipgatetrunk)

Asterisk 12

Tool – 46 and 2 cover

cooles Stück …

Alle Carrier verwenden inzwischen IP-Technik in ihren Netzen

Alle Carrier verwenden inzwischen IP-Technik in ihren Netzen, sodass selbst ISDN und analog Kunden ab der Vermittlungsstelle per VoIP telefonieren. Auch werden inzwischen Mobilfunkbasisstationen über die IP-Backbones angebunden. Mittelfristig wird restlos alles von Telefon, Internet bis TV über IP übertragen.
Deine VoIP-Telefonate als Telekom-Kunde werden das Telekom-Netz allerdings nicht verlassen, sodass diese im Machtbereich der Telekom bleiben. Nur weil bei VoIP das Internetprotokoll verwendet wird, heißt das nicht, daß Deine Telefonate durch öffentliche Teile des Internets geroutet werden. Ich weiß nicht wie die Telekom ihre SIP-Infrastruktur aufgebaut hat, aber bei Telefonica beispielsweise befinden sich die SIP-Server in einem Intranet, zu dem nur die eigenen DSL-Kunden Zugang haben und zwar über eine sog. 2. PVC.
Dass die Telekom SIP-Server von extern unerreichbar sind, wird wohl an der Isolation der Server vom restlichen Internet liegen. Man könnte die SIP-Server aber sowohl über ein Intranet als auch von extern zugänglich machen, ohne dass externe User irgendwie an die Datenströme des Intranets gelangen können. Daß man das nicht macht, liegt sicherlich weniger an Sicherheitsbedenken sondern daran, dass die Telekom vermeiden möchte, dass Kunden ihre VoIP-Accounts von unterwegs nutzen und so z.B. Mobilfunkumsätze mindern. Bei 1&1 dagegen ist die Nutzung der VoIP-Accounts aus dem Internet möglich.

Blade-Center m1000e

Blade-Center m1000e mit m605 Blades im iDRAC Firmware update Modus

 

node.js websocket Server für WebRTC

websocket muss installiert sein!!!

npm install -g websocket

 

Hier mein Websocket Server js.
var WebSocketServer = require('websocket').server;
var http = require('http');
var clients = [];

var server = http.createServer(function(request, response) {
});
server.listen(1337, function() {
console.log((new Date()) + " Server is listening on port 1337");
});

wsServer = new WebSocketServer({
httpServer: server
});

function originIsAllowed(origin) {
console.log((new Date()) + ' originIsAllowed ' + origin + '.');
if (origin != "http://www.soho-piper.de"){
return false;
}
}
function sendCallback(err) {
if (err) console.error("send() error: " + err);
}
wsServer.on('request', function(request) {

if (!originIsAllowed(request.origin)){
request.reject();
console.log((new Date()) + ' Connection from origin ' + request.origin + ' rejected.');
return;
}

console.log((new Date()) + ' Connection from origin ' + request.origin + ' accepted.');
var connection = request.accept(null, request.origin);
console.log(' Connection ' + connection.remoteAddress);
clients.push(connection);

connection.on('message', function(message) {
if (message.type === 'utf8') {
console.log((new Date()) + ' Received Message ' + message.utf8Data);
clients.forEach(function (outputConnection) {
if (outputConnection != connection) {
outputConnection.send(message.utf8Data, sendCallback);
}
});
}
});

connection.on('close', function(connection) {
console.log((new Date()) + " Peer disconnected.");
});
});

ngrep websocket RTCPeerConnection SDP Chrome Beta

Die Chrome Beta Version hat schon den opus/48000 Audio Codec und den VP8/90000 Video Codec.

isRTCPeerConnection: true www.soho-piper.de:82
SEND: {"sdp":"v=0
o=- 3117233998 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio video
m=audio 1 RTP/SAVPF 103 104 111 0 8 106 105 13 126
c=IN IP4 0.0.0.0
a=rtcp:1 IN IP4 0.0.0.0
a=ice-ufrag:EohH2MyR2LBzUGLn
a=ice-pwd:IbGkWyhCr73E9Jnjn/FV5qPL
a=ice-options:google-ice
a=sendrecv
a=mid:audio
a=rtcp-mux
a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:9dVqc72ok2wFPh6GFvEMDkk7aDAqmQjukd/ItjZX
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:111 opus/48000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:126 telephone-event/8000
a=ssrc:2262201577 cname:1IsV42jXVbXIX3XA
a=ssrc:2262201577 msid:FtDKFx4ghoDhLuiUVlmsxYJHdlijwl9IyjOA a0
a=ssrc:2262201577 mslabel:FtDKFx4ghoDhLuiUVlmsxYJHdlijwl9IyjOA
a=ssrc:2262201577 label:FtDKFx4ghoDhLuiUVlmsxYJHdlijwl9IyjOAa0
m=video 1 RTP/SAVPF 100 101 102
c=IN IP4 0.0.0.0
a=rtcp:1 IN IP4 0.0.0.0
a=ice-ufrag:EohH2MyR2LBzUGLn
a=ice-pwd:IbGkWyhCr73E9Jnjn/FV5qPL
a=ice-options:google-ice
a=sendrecv\r\na=mid:video
a=rtcp-mux\r\n
a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:9dVqc72ok2wFPh6GFvEMDkk7aDAqmQjukd/ItjZX
a=rtpmap:100 VP8/90000
a=rtpmap:101 red/90000
a=rtpmap:102 ulpfec/90000
a=ssrc:684625129 cname:1IsV42jXVbXIX3XA
a=ssrc:684625129 msid:FtDKFx4ghoDhLuiUVlmsxYJHdlijwl9IyjOA v0
a=ssrc:684625129 mslabel:FtDKFx4ghoDhLuiUVlmsxYJHdlijwl9IyjOA
a=ssrc:684625129 label:FtDKFx4ghoDhLuiUVlmsxYJHdlijwl9IyjOAv0","type":"offer"}

Asterisk 11.1.2 update

Informationen zum Update:
Quelle: Asterisk 11.1.2 Changelog
http://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-11-current