dial 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #!/bin/sh
  2. SIP_USERNAME=$1
  3. DESTINATION=$2
  4. if [ "${SIP_USERNAME}" == "" ]; then
  5. echo "Missing CLI arguments: SIP_USERNAME and DESTINATION. Exiting"
  6. exit 1
  7. fi
  8. if [ "${DESTINATION}" == "" ]; then
  9. echo "Missing CLI argument: DESTINATION number/endpoint. Exiting"
  10. exit 1
  11. fi
  12. SIP_SERVER_HOST=${SIP_SERVER_HOST:-asterisk}
  13. SIP_SERVER_PORT=${SIP_SERVER_PORT:-5160}
  14. SIP_PASSWORD=${SIP_PASSWORD:-asterisk}
  15. # udp, tcp
  16. SIP_TRANSPORT=${SIP_TRANSPORT:-udp}
  17. # random ports in a range
  18. LOCAL_PORT=$(shuf -i 50001-55999 -n 1)
  19. RTP_PORT=$(shuf -i 56001-59999 -n 1)
  20. pjsua \
  21. --log-level=0 \
  22. --app-log-level=0 \
  23. --no-stderr \
  24. --color \
  25. --light-bg \
  26. --null-audio \
  27. --snd-auto-close=0 \
  28. --max-calls=15 \
  29. --no-vad \
  30. --use-compact-form \
  31. --reg-timeout=90 \
  32. --rereg-delay=90 \
  33. --use-srtp=0 \
  34. --srtp-secure=0 \
  35. --rtcp-mux \
  36. --use-timer=1 \
  37. --reg-use-proxy=3 \
  38. --auto-update-nat=1 \
  39. --disable-stun \
  40. --local-port=${LOCAL_PORT} \
  41. --rtp-port=${RTP_PORT} \
  42. --realm="*" \
  43. --registrar="sip:${SIP_SERVER_HOST}:${SIP_SERVER_PORT};transport=${SIP_TRANSPORT}" \
  44. --proxy="sip:${SIP_SERVER_HOST}:${SIP_SERVER_PORT};transport=${SIP_TRANSPORT}" \
  45. --outbound="sip:${SIP_SERVER_HOST}:${SIP_SERVER_PORT};transport=${SIP_TRANSPORT}" \
  46. --id="sip:${SIP_USERNAME}@${SIP_SERVER_HOST}:${SIP_SERVER_PORT};transport=${SIP_TRANSPORT}" \
  47. --username="${SIP_USERNAME}" \
  48. --password="${SIP_PASSWORD}" \
  49. "sip:${DESTINATION}@${SIP_SERVER_HOST}:${SIP_SERVER_PORT};transport=${SIP_TRANSPORT}"