рдЖрд╕реНрдХреЛрдЬрд╝рд┐рдпрд╛ рдкреАрдмреАрдПрдХреНрд╕ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рд╣рдордиреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдлреЛрди рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдХрд╛ рд╕рд╛рдордирд╛ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рддрд░реАрдХреЗ рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ред
рдСрдЯреЛрдкреНрд░реЛрд╡рд┐рдЬрдирд┐рдВрдЧ рдкреНрд▓рдЧ рдПрдВрдб рдкреНрд▓реЗ (PnP), рдпрд╣ рддрдХрдиреАрдХ рдХрдИ рдирд┐рд░реНрдорд╛рддрд╛рдУрдВ - рдпреЗрд▓рд┐рдВрдХ, рд╕реНрдиреЛрдо, рдлреИрдирд╡рд┐рд▓ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИред
рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдлрд╝реЛрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдореБрдЦреНрдп рд▓рд╛рдн:
- рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реЗрдЯрдЕрдк рдХреА рд╕реБрд╡рд┐рдзрд╛ рджреЗрддрд╛ рд╣реИ - рдкреНрд░рддреНрдпреЗрдХ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╡реЗрдм рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░ рдЬрд╛рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдСрдЯреЛ-рдЯреНрдпреВрдирд┐рдВрдЧ рд╕рд░реНрд╡рд░ рдкрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдореИрдХ рдкрддреЗ рдФрд░ рдЦрд╛рддреЗ рдХреЗ рдкрддреНрд░рд╛рдЪрд╛рд░ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
- рд╕рдорд░реНрдерди рдХреЛ рд╕рд░рд▓ рдХрд░рддрд╛ рд╣реИ - рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдпрджрд┐ рдЖрдкрдХреЛ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╣рдо рд╕рд░реНрд╡рд░ рдкрд░ рдлрд┐рд░ рд╕реЗ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ
- рд╕реНрдЯрд╛рд░рдХреЛрдб рдХреЗ рд╕реЗрдЯ рдХреА рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рдХрдо рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ "* 911 * <SIP_ACC>" - рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдореВрд▓реНрдп рдирд╣реАрдВ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрдпрд╛рд▓рдп рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдЖрдИрдкреА рдлреЛрди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЛ рдбрд╛рдпрд▓ рдХрд░рдирд╛ рдПрдХ рд╕рд░рд▓ рдХрд╛рд░реНрдп рд╣реИред
рдмрддрд╛ рджреЗрдВ рдХрд┐ рдСрдЯреЛрдкреНрд░реЛрд╡рд┐рдЬрди рдкреНрд▓рдЧ рдПрдВрдб рдкреНрд▓реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рд▓реЗрдЦ рдХреЗ рдЕрдВрдд рдореЗрдВ, рдПрдХ рдЫреЛрдЯреА рд╕реА PHP рд╕реНрдХреНрд░рд┐рдкреНрдЯ
рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХрд╛ рд▓рд┐рдВрдХ рдЬреЛ PnP рд╕рд░реНрд╡рд░ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред
рдХреЗрд╕ рд╕реНрдЯрдбреА
рд╣рдорд╛рд░реЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдЯреЗрд▓реАрдлреЛрдиреА рдХреА рд╢реБрд░реБрдЖрдд рдХрд░рддреЗ рд╕рдордп рд╣рдорд╛рд░рд╛ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдорд╛рдорд▓рд╛ рдерд╛ред рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдпрд╣ рдереА рдХрд┐ рдЧреНрд░рд╛рд╣рдХ рджреВрд╕рд░реЗ рд╢рд╣рд░ рдореЗрдВ рдерд╛ред рдЙрд╕реА рд╕рдордп, рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдпрд╣ рдерд╛ рдХрд┐ рдкрд╛рд░реНрд╕рд▓ рдХреЛ рдлреЛрди рдХреЗ рд╕рд╛рде рдЕрдирдкреИрдХ рдХрд░рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рдкреНрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЯреЗрд▓реАрдлреЛрдиреА рдХреЛ рддреБрд░рдВрдд рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рд░рд▓ рд░реВрдк рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЧреНрд░рд╛рд╣рдХ рдиреЗ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрдИ рдЖрдИрдкреА рдкрддреЗ рдЖрд░рдХреНрд╖рд┐рдд рдХрд┐рдП рд╣реИрдВред рд╣рдордиреЗ рдЕрдкрдиреЗ рдХрд╛рд░реНрдпрд╛рд▓рдп рдореЗрдВ рдЙрдкрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдФрд░ рдЗрд╕реЗ рдПрдХ рдмреЙрдХреНрд╕ рдореЗрдВ рдкреИрдХ рдХрд┐рдпрд╛ рдФрд░ рдХреВрд░рд┐рдпрд░ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬрд╛ред
рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдбрд┐рд╡рд╛рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдХрд╛рд░реНрдп рдмрд╣реБрдд рд╕рд░рд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рд╕рд░рд▓реАрдХреГрдд PnP рдпреЛрдЬрдирд╛
рдХрд╛рдо рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЯреЗрд▓реАрдлреЛрди
224.0.1.75 рдорд▓реНрдЯреАрдХрд╛рд╕реНрдЯ рдЖрдИрдкреА рдкрддреЗ рдкрд░ рдПрдХ рдкреНрд░рд╕рд╛рд░рдг
рдПрд╕рдЖрдИрдкреА SUBSCRIBE рдЕрдиреБрд░реЛрдз рднреЗрдЬрддрд╛ рд╣реИред
224.0.1.75 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВ224.0.1.75 - рдпрд╣ рдорд▓реНрдЯреАрдХрд╛рд╕реНрдЯ рдЖрдИрдкреА (рдорд▓реНрдЯреАрдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП) рдПрд╕рдЖрдИрдкреА рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП "рдЖрд░рдХреНрд╖рд┐рдд" рд╣реИред
рдиреЗрдЯрд╡рд░реНрдХреНрд╕ рджреЗрдЦреЗрдВ
ред.com/Enp/protocol/sip.htm224.0.1.75 рдПрд╕рдЖрдИрдкреА, рд╕рддреНрд░ рдкрд╣рд▓ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ (рд╕рднреА рд╕рд░реНрд╡рд░)ред
рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рд╡рд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде
NOTIFY рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реИред

SUBSCRIBE рдЙрджрд╛рд╣рд░рдг2019/09/02 09:26:41.543856 172.16.32.148:5059 -> 224.0.1.75:5060 SUBSCRIBE sip:MAC0015657322ff@224.0.1.75 SIP/2.0 Via: SIP/2.0/UDP 172.16.32.148:5059;branch=z9hG4bK42032775 From: <sip:MAC0015657322ff@224.0.1.75>;tag=42032772 To: <sip:MAC0015657322ff@224.0.1.75> Call-ID: 42032772@172.16.32.148 CSeq: 1 SUBSCRIBE Contact: <sip:MAC0015657322ff@172.16.32.148:5059> Max-Forwards: 70 User-Agent: Yealink SIP-T21P 34.72.14.6 Expires: 0 Event: ua-profile;profile-type="device";vendor="Yealink";model="T21D";version="34.72.14.6" Accept: application/url Content-Length: 0
рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рд╕реБрд░реНрдЦрд┐рдпрд╛рдБ
- рд╕реЗ - рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЕрдлреАрдо рдкрддрд╛ 0015657322ff рд╣реИ
- рдШрдЯрдирд╛ - рдбрд┐рд╡рд╛рдЗрд╕, рдирд┐рд░реНрдорд╛рддрд╛, рдореЙрдбрд▓, рдлрд░реНрдорд╡реЗрдпрд░ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ
- рд╕рдВрдкрд░реНрдХ - рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдкрддрд╛
- рдХреЙрд▓-рдЖрдИрдбреА - рдпреЗрд▓рд┐рдВрдХ рд╕реЗ DECT рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рд╣реЗрдбрд░ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдпрд╣ рд▓рд╛рдЗрди рдЖрдЗрдбреЗрдВрдЯрд┐рдлрд╝рд╛рдпрд░ (рдЯреНрдпреВрдм рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░), рд╕реАрдорд╛рдВрдХрдХ " _ " рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред
PnP рд╕рд░реНрд╡рд░ рдХреЛ рдРрд╕рд╛ рдЕрдиреБрд░реЛрдз рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЙрд╕реЗ рдЬрд╡рд╛рдм рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП
рдЙрджрд╛рд╣рд░рдг рдирд╣реАрдВ 2019/09/02 09:26:41.550125 172.16.32.153:57593 -> 172.16.32.148:5059 NOTIFY sip:172.16.32.148:5059 SIP/2.0 Via: SIP/2.0/UDP 172.16.32.148:5059;branch=z9hG4bK42032775 Max-Forwards: 20 Contact: <sip:172.16.32.148:5059;transport=UDP;handler=dum> From: <sip:MAC0015657322ff@224.0.1.75>;tag=42032772 To: <sip:MAC0015657322ff@224.0.1.75> Call-ID: 42032772@172.16.32.148 CSeq: 3 NOTIFY Content-Type: application/url Subscription-State: terminated;reason=timeout Event: ua-profile;profile-type="device";vendor="MIKO";model="MikoServerPnP";version="1.8" Content-Length: 40 http://172.16.32.153:84/0015657322ff.cfg
рдПрдХ NOTIFY рд╕рдВрджреЗрд╢ рдореЗрдВ, рд╕рдмрд╕реЗ рдореВрд▓реНрдпрд╡рд╛рди рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрджреЗрд╢ рдХреЗ рдореБрдЦреНрдп рднрд╛рдЧ рдореЗрдВ рд╣реИред рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рд╢рд░реАрд░ рдореЗрдВ рдЖрдкрдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
http://172.16.32.153:84/0015657322ff.cfg
рдпрджрд┐ рдХрдИ PnP рд╕рд░реНрд╡рд░ рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╡рд╣ рдХреМрди рд╣реИ рдЬреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдЧрд╛, рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдЧрд╛ред
NOTIFY рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░ рдлреЛрди, рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрддреЗ рдкрд░ рдЕрдиреБрд░реЛрдз рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред
рд╕рд░реНрд╡рд░ рдЕрдиреБрд░реЛрдз рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЙрджрд╛рд╣рд░рдг # curl -i http://172.16.32.153:84/0015657322ff.cfg HTTP/1.0 200 OK Content-type: text/plain Date: Mon, 02 Sep 2019 06:52:23 GMT Connection: close Accept-Ranges: bytes Last-Modified: Mon, 02 Sep 2019 06:25:02 GMT Content-length: 769 #!version:1.0.0.1 account.1.enable = 1 account.1.label = PnP (203) ...
рд╕рд░реНрд╡рд░ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди github
https://github.com/boffart/MikoServerPnP рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ
PnP рд╕рд░реНрд╡рд░ рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдпрд╣ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
- PHP 7.1.9
- Php рд╕реЙрдХреЗрдЯ
- рдмрд┐рдЬреАрдмреЙрдХреНрд╕ v1.26.2
- рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдкреНрд░рд╕рд╛рд░рдг рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП
PnP рд╕рд░реНрд╡рд░ рд╕реБрд╡рд┐рдзрд╛рдПрдБ
- ' 224.0.1.75:5060 ' рдкрддреЗ рдкрд░ рднреЗрдЬреЗ рдЧрдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕реБрдирддрд╛ рд╣реИ
- рдЬрдм рдпрд╣ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╡реЗрдм рд╕рд░реНрд╡рд░ ( рдХрд╛рд░реНрдпрдкрдЯреНрдЯреА httpd ) рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ
- рдЖрдкрдХреЛ рдПрдХ рд╕рд░рд▓реАрдХреГрдд рдлреЛрди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
- рдЖрдкрдХреЛ рд░рд┐рдмреВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд┐рд▓рд┐рдВрдХ рдиреЛрдЯ рдкрд░ рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
PnP рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЖрдк "рд╡рди-рдЯрд╛рдЗрдо рд▓рд┐рдВрдХ" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдо рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓рд┐рдВрдХ рджреНрд╡рд╛рд░рд╛ рджреЗрддреЗ рд╣реИрдВ:
http://172.16.32.153:84/0015657322ff.cfg
рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╕реАрдзрд╛ рд▓рд┐рдВрдХред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдпрд╣ рд╕реБрд░рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд╣реИред рдлреЛрди рдХреЗ рдореИрдХ рдкрддреЗ рдФрд░ рд╕рд░реНрд╡рд░ рдкрддреЗ рдХреЛ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рдиреНрдпрд╛рд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
PnP рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп, рдкреНрд░рддреНрдпреЗрдХ SUBSCRIBE рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рд▓рд┐рдВрдХ рджреЗрдирд╛ рд╕рдВрднрд╡ рд╣реИ:
http://172.16.32.153:84/?mac=0015657322ff&hash=0a67f5290
рд╣реИрд╢ рдХреА рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реВрддреНрд░ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:
hash = md5(MAC + DATE + PID)
PID PnP рд╕рд░реНрд╡рд░ рдХреА рдкреНрд░реЛрд╕реЗрд╕ рдЖрдИрдбреА рд╣реИред рдХреЗрд╡рд▓
рдЬрдбрд╝ рд╣реА рдЗрд╕реЗ рдкрд╣рдЪрд╛рди рд╕рдХрддрд╛ рд╣реИред
рдРрд╕реЗ
рд╣реИрд╢ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд╕рдВрднрд╡ рд╣реИред
рдпрджрд┐ рдХреЛрдИ рдЕрдкреАрд▓ рдЕрдорд╛рдиреНрдп рд▓рд┐рдВрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реЛрддреА рд╣реИ, рддреЛ рд╣рдо рдХреАрдЯ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛рддреЗ рд╣реИрдВред
рд░рд┐рдмреВрдЯ Yealink рдиреЛрдЯ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рдмрд┐рдирд╛ рдорддрд▓рдм рд╣реИ
рд╣рд╛рдВ, рд╣рд╛рдВ,
рдмрд┐рдирд╛ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ ред
рдореИрдВ рдЗрд╕ рд╕рдВрднрд╛рд╡рдирд╛ рд╕реЗ рдлрд░реНрдорд╡реЗрдпрд░ рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдмрдВрдж рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ред
рдмрд╕ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдУ
php -f MikoServerPnP.php socket_client_notify <IP_PBX> <PORT_SIP_PBX> <IP_PHONE> <PORT_PHONE>
рдФрд░ рдлреЛрди рд░рд┐рдмреВрдЯ рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рдПрдЧрд╛ред рдХреНрд░реЛрди рдореЗрдВ рдРрд╕реА рдХрдорд╛рдВрдб рдХреЛ рд▓рдЯрдХрд╛рдХрд░ рдЖрдк рдПрдХ рднрдпрд╛рдирдХ рдкреНрд░рднрд╛рд╡ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдЕрдЧрд░ рд╣рдо рдлреЛрди рдХрд╛ рдЖрдИрдкреА рдкрддрд╛ рдФрд░ рдПрд╕рдЖрдИрдкреА рдкреЛрд░реНрдЯ рдЬрд╛рдирддреЗ рд╣реИрдВред
NOTIFY рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджрд╛рд╣рд░рдг PHP рдлрд╝рдВрдХреНрд╢рди public static function socket_client_notify($ip_pbx, $port_pbx, $ip_phone, $port_phone):void { $phone_user = 'autoprovision_user'; $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP); $msg = "NOTIFY sip:{$phone_user}@{$ip_phone}:{$port_phone};ob SIP/2.0\r\n". "Via: SIP/2.0/UDP {$ip_pbx}:{$port_pbx};branch=z9hG4bK12fd4e5c;rport\r\n". "Max-Forwards: 70\r\n". "From: \"asterisk\" <sip:asterisk@{$ip_pbx}>;tag=as54cd2be9\r\n". "To: <sip:{$phone_user}@{$ip_phone}:{$port_phone};ob>\r\n". "Contact: <sip:asterisk@{$ip_pbx}:{$port_pbx}>\r\n". "Call-ID: 4afab6ce2bff0be11a4af41064340242@{$ip_pbx}:{$port_pbx}\r\n". "CSeq: 102 NOTIFY\r\n". "User-Agent: mikopbx\r\n". "Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE\r\n". "Supported: replaces, timer\r\n". "Subscription-State: terminated\r\n". "Event: check-sync;reboot=true\r\n". "Content-Length: 0\r\n\n"; $len = strlen($msg); socket_sendto($sock, $msg, $len, 0, $ip_phone, $port_phone); socket_close($sock); }
PnP рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ / settings.json рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ
{ "url": "http://<pbx_host>:<http_port>/", "http_port": 84, "pbx_host": "172.16.32.153", "pbx_sip_port": "5060", "vm_extension": "*001", "feature_transfer": "**" }
рдореИрдХ рд╢реНрд╡реЗрддрд╕реВрдЪреА
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ / mac_white.conf рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд┐рднрд╛рдЬрдХ - рд▓рд╛рдЗрди рдлреАрдбред
рдореИрдХ рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ / mac_black.conf рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд┐рднрд╛рдЬрдХ - рд▓рд╛рдЗрди рдлреАрдбред
рдлреЛрди рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╛рдЗрд▓
рд╡рд┐рдиреНрдпрд╛рд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
PnP рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк Yeakink рдФрд░ Snom рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╡рд┐рдиреНрдпрд╛рд╕ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ:
php -f MikoServerPnP.php mk_config SIP_ACCAUNT SECRET MAC
рдЙрдкрдпреЛрдЧреА рд╕рд╛рдордЧреНрд░реА