Хотя ответ @arheops не сработал, он, безусловно, был полезен, чтобы указать мне правильное направление.
Телефон в значительной степени отправляет MESSAGE
без какого-либо контента, и даже без Content-Type.
<--- SIP read from UDP:<Phone External IP>:5060 --->
MESSAGE sip:1014@<Server Internal IP>:5060;user=phone SIP/2.0
Via: SIP/2.0/UDP <Phone Internal IP>:5060;branch=z9hG4bK2621781087c1096064fa949
From: "1014" <sip:1014@<Server Internal IP>:5060;user=phone>;tag=2621781087c1096064fa949;fjline-hunt=ML-141
To: <sip:1014@<Server Internal IP>:5060;user=phone>
CSeq: 1 MESSAGE
Call-ID: 00062621781087c1096064fa94900@<Phone Internal IP>
Content-Length: 0
Max-Forwards: 70
User-Agent: Fujitsu SS-170A/B/C V02L001C06
<------------->
--- (9 headers 0 lines) ---
В конце концов я нашел этот вопрос: Входящее сообщение Asterisk выдает: 415 неподдерживаемых типов носителей
В котором говорится, что без содержимого типа text / plain Asterisk сразу отклоняет сообщение.
Конечно, правильным способом было бы действительно клонировать Asterisk и перестроить его из исходного кода, но учитывая ограничение по времени (и лень), я просто использовал Hopper, чтобы найти смещение строкового литерала после «text / plain», и просто заставить его ответить 200 OK
(группа пробелов в конце).
И теперь я могу легко позвонить любому с этого телефона!
Входящие вызовы, однако, не работают: он отвечает OK на уведомление, но ничего не делает, и Asterisk перенаправляет вызов на голосовую почту.
И я также не могу проверить голосовую почту, потому что она не будет отправлять DTMF внутри или вне полосы.
Короче говоря, не покупайте SIP-телефон на распродаже бывшей в употреблении электроники только потому, что он дешевый и выглядит круто, протоколы для конкретного поставщика могут быть PITA.