เจœเจผเฉˆเจฌเจฟเจ•เจธ เจจเฉ‚เฉฐ เจฌเจ•เจธเฉ‡ เจฆเฉ‡ เจฌเจพเจนเจฐ เจคเจพเจฐเฉ‡ เจฆเฉ‡ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐเจจเจพ เจนเฉˆ

เจชเจฟเจ›เจฒเฉ‡ เจฒเฉ‡เจ– เจตเจฟเฉฑเจš "เจœเจผเฉˆเจฌเจฟเจ•เจธ - เจฎเฉˆเจ•เจฐเฉ‹ เจธเฉ€เจฎเจพเจตเจพเจ‚ เจฆเจพ เจตเจฟเจธเจคเจพเจฐ" เจฎเฉˆเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉฑเจธเจฟเจ† เจนเฉˆ เจ•เจฟ เจ…เจงเจฟเจ•เจพเจฐ เจธเฉˆเจธเจผเจจ เจ•เจฟเจตเฉ‡เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจธเจฅเจพเจจเจ• เจนเฉ‹เจธเจŸ เจฎเฉˆเจ•เจฐเฉ‹ เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฃเจพ เจนเฉˆเฅค เจ‡เจธ เจฒเฉ‡เจ– เจตเจฟเจš เจฎเฉˆเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉฑเจธเจพเจ‚เจ—เจพ เจ•เจฟ เจฌเจพเจนเจฐเฉ€ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจ…เจคเฉ‡ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจคเฉ‹เจ‚ เจฌเจฟเจจเจพเจ‚ เจœเจผเฉˆเจฌเจฟเจ•เจธ เจจเฉ‚เฉฐ เจเจธเจŸเจฐเจฟเจธเจ• เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจตเฉ‡เฅค

เจ‡เจนเจจเจพเจ‚ เจฆเฉ‹ เจชเฉเจฐเจฃเจพเจฒเฉ€เจ†เจ‚ เจฆเฉ‡ "เจฆเฉ‹เจธเจค" เจฌเจฃเจพเจ‰เจฃ เจฆเจพ เจตเจฟเจšเจพเจฐ เจฌเจนเฉเจค เจธเจฎเจพเจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจชเฉˆเจฆเจพ เจนเฉ‹เจ‡เจ† เจธเฉ€, เจฌเจฟเจจเจพเจ‚ เจตเจพเจงเฉ‚ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจœเจพเจ‚ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฅเจพเจชเจฟเจค เจ•เฉ€เจคเฉ‡. เจ‡เฉฑเจ• เจคเฉ‡เจœเจผ เจ—เฉ‚เจ—เจฒเจฟเฉฐเจ— เจจเฉ‡ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจธเฉฐเจญเจพเจตเฉ€ เจนเฉฑเจฒ เจ•เฉฑเจขเฉ‡, เจ‡เจน เจธเจญ เจ‡เจธ เจคเฉฑเจฅ 'เจคเฉ‡ เจ‰เจฌเจพเจฒเจฟเจ† เจ—เจฟเจ† เจ•เจฟ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ (เจชเจพเจˆเจนเจพ, เจฌเจพเจธเจผ, เจชเจพเจˆเจฅเจจ, เจ†เจฆเจฟ เจตเจฟเฉฑเจš) เจจเฉ‚เฉฐ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจ…เฉฑเจชเจฒเฉ‹เจก เจ•เจฐเฉ‹, เจ…เจคเฉ‡ เจคเฉเจธเฉ€เจ‚ เจ–เฉเจธเจผ เจนเฉ‹เจตเฉ‹เจ—เฉ‡เฅค เจฎเฉˆเจ‚ "เจฌเจพเจ•เจธ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ" เจจเจฟเจ—เจฐเจพเจจเฉ€ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเจพ เจธเฉ€ - เจฌเจฟเจจเจพเจ‚ เจฌเจพเจนเจฐเฉ€ เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจ…เจคเฉ‡ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจ…เจคเฉ‡ PBX เจฆเฉ‡ เจจเจพเจฒ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจตเจพเจงเฉ‚ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจธเจฅเจพเจชเจค เจ•เจฐเจจเจพเฅค

เจฎเฉˆเจ‚ เจ‡เจธ เจจเจพเจฒ เจ•เฉเฉฑเจฒ 4 เจ•เฉฐเจฎเจ•เจพเจœเฉ€ เจฆเจฟเจจ เจฌเจฟเจคเจพเจ, เจชเจฐ เจจเจคเฉ€เจœเจพ เจ‡เจธ เจฆเฉ‡ เจฏเฉ‹เจ— เจธเฉ€เฅค AMI เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจฆเฉเจ†เจฐเจพ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ, เจ˜เฉฑเจŸ-เจชเฉฑเจงเจฐเฉ€ เจ–เฉ‹เจœ, เจŸเจฐเจฟเจ—เจฐเจธ, เจ…เจคเฉ‡ เจธเจญ เจคเฉ‹เจ‚ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ, PBX เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจธเจพเจฐเฉ€เจ†เจ‚ เจธเฉˆเจŸเจฟเฉฐเจ—เจพเจ‚ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจ เจตเจฟเฉฑเจš เจนเฉเจฃ เจฒเจ—เจญเจ— 15 เจฎเจฟเฉฐเจŸ เจฒเฉฑเจ—เจฆเฉ‡ เจนเจจเฅค

Zabbix 4.4 เจ‰เจชเจฒเจฌเจง เจนเฉˆ, Asterisk เจธเฉฐเจธเจ•เจฐเจฃ 100 เจฆเฉ‡ เจฒเจ—เจญเจ— 13 เจŸเฉเจ•เฉœเฉ‡เฅค เจ•เฉเจ PBXs FreePBX เจตเฉˆเฉฑเจฌ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจฆเฉ‡ เจจเจพเจฒ เจ†เจ‰เจ‚เจฆเฉ‡ เจนเจจ, เจ•เฉเจ เจ‡เฉฑเจ• เจจเฉฐเจ—เฉ‡ เจ•เฉฐเจธเฉ‹เจฒ เจฆเฉ‡ เจจเจพเจฒ, เจŸเฉเจฐเจฟเจ•เจธ เจฆเจพ เจ‡เฉฑเจ• เจธเจฎเฉ‚เจน เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจกเจพเจ‡เจฒเจชเจฒเจพเจจ เจฆเฉเจ†เจฐเจพ เจเจ•เฉ€เจ•เจฐเจฃเฅค

PBX เจคเฉ‹เจ‚ เจกเจพเจŸเจพ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆ

เจชเจนเจฟเจฒเจพ เจ…เจคเฉ‡ เจฎเฉเฉฑเจ– เจฌเจฟเฉฐเจฆเฉ‚ เจœเจฟเจธ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจจ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจนเฉˆ เจ‰เจน เจนเฉˆ เจธเจพเจฅเฉ€เจ†เจ‚ เจ…เจคเฉ‡ SIP เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฌเจพเจฐเฉ‡ เจกเฉ‡เจŸเจพ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเจพ. เจ‡เจธ เจฎเฉฐเจคเจต เจฒเจˆ, PBX เจ•เฉ‹เจฒ AGI, AMI, ARI เจ…เจคเฉ‡ SSH เจ•เฉฐเจธเฉ‹เจฒ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจนเจจเฅค เจธเจชเฉฑเจธเจผเจŸ เจ•เจพเจฐเจจเจพเจ‚ เจ•เจฐเจ•เฉ‡, เจฎเฉˆเจ‚ เจตเจพเจงเฉ‚ เจฎเฉˆเจกเจฟเจŠเจฒเจพเจ‚ 'เจคเฉ‡ เจตเจฟเจšเจพเจฐ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพเฅค

เจชเจนเจฟเจฒเจพเจ‚ เจธเจพเจจเฉ‚เฉฐ เจ‡เจน เจชเจคเจพ เจฒเจ—เจพเจ‰เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ เจ•เจฟ เจ‡เจน เจ…เจ—เฉ€, เจ…เจฎเฉ€, เจ…เจฐเฉ€ เจ•เฉ€ เจนเจจ...

  • AGI - เจกเจพเจ‡เจฒเจชเจฒเจพเจจ เจตเจฟเฉฑเจš เจธเจ•เฉเจฐเจฟเจชเจŸเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพเฅค เจฎเฉเฉฑเจ– เจคเฉŒเจฐ 'เจคเฉ‡ เจ•เจพเจฒ เจชเฉเจฐเจฌเฉฐเจงเจจ เจฒเจˆ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค
  • AMI - เจธเจพเจฐเฉ€ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ, เจชเฉ‹เจฐเจŸ 5038 เจฆเฉเจ†เจฐเจพ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ, เจŸเฉ‡เจฒเจจเฉˆเฉฑเจŸ เจตเจพเจ‚เจ— เจนเฉ€เฅค เจธเจพเจกเฉ‡ เจฒเจˆ เจ…เจจเฉเจ•เฉ‚เจฒ เจนเฉˆ!
  • ARI - เจ†เจงเฉเจจเจฟเจ•, เจซเฉˆเจธเจผเจจเฉ‡เจฌเจฒ, JSONเฅค เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจธเฉฐเจญเจพเจตเจจเจพเจตเจพเจ‚ เจนเจจ, เจœเจผเฉˆเจฌเจฟเจ•เจธ เจฒเจˆ เจกเฉ‡เจŸเจพ เจซเจพเจฐเจฎเฉˆเจŸ เจธเจฎเจเจฃ เจฏเฉ‹เจ— เจนเฉˆ, เจชเจฐ เจฎเฉ‡เจฐเฉ‡ เจฒเจˆ เจ•เฉ‹เจˆ เจฎเฉเฉฑเจ– เจ—เฉฑเจฒ เจจเจนเฉ€เจ‚ เจนเฉˆ: เจคเฉเจธเฉ€เจ‚ เจธเจฟเจช เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจจเจฟเจฏเฉฐเจคเจฐเจฟเจค เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡. เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจจเฉเจ•เจธเจพเจจ เจ‡เจน เจนเฉˆ เจ•เจฟ เจธเจพเจฅเฉ€เจ†เจ‚ เจฒเจˆ เจ”เจจเจฒเจพเจˆเจจ/เจ†เจซเจฒเจพเจˆเจจ เจธเจฟเจฐเจซ เจฆเฉ‹ เจฐเจพเจœ เจนเจจ, เจนเจพเจฒเจพเจ‚เจ•เจฟ เจ‡เฉฑเจฅเฉ‡ เจนเฉ‹เจฐ เจฐเจพเจœ เจนเจจ เจ…เจคเฉ‡ เจจเจฟเจฆเจพเจจ เจ•เจฐเจจ เจตเฉ‡เจฒเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจงเจฟเจ†เจจ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เจฃเจพ เจฒเจพเจญเจฆเจพเจ‡เจ• เจนเฉˆเฅค
  • SSH เจธเจญ เจ•เฉเจ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ, เจชเจฐ เจ•เจˆ เจตเจพเจฐ "เจธเฉเจฐเฉฑเจ–เจฟเจ† เจ•เจพเจฐเจจเจพเจ‚" เจ•เจฐเจ•เฉ‡ เจ‡เจธเจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจตเจฟเจšเจพเจฐ เจตเฉฑเจ–เจฐเฉ‡ เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจ, เจฎเฉˆเจ‚ เจ‰เจจเฉเจนเจพเจ‚ เจตเจฟเฉฑเจš เจจเจนเฉ€เจ‚ เจœเจพเจตเจพเจ‚เจ—เจพเฅค

เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจ‡เจธเจฆเฉ€เจ†เจ‚ เจธเจพเจฐเฉ€เจ†เจ‚ เจ•เจฎเฉ€เจ†เจ‚ เจฆเฉ‡ เจจเจพเจฒ, ARI เจธเจพเจฐเฉ€เจ†เจ‚ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจฒเฉ‹เฉœเจพเจ‚ เจฆเฉ‡ 90% เจจเฉ‚เฉฐ เจ•เจตเจฐ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจœเจผเฉˆเจฌเจฟเจ•เจธ เจ…เจคเฉ‡ เจŸเฉ‡เจฒเจจเฉˆเฉฑเจŸ - เจฎเฉ‡เจฐเฉ€ เจจเจฟเจฐเจพเจธเจผเจพ

เจฎเฉˆเจ‚ AMI เจจเฉ‚เฉฐ เจšเฉฐเจ—เฉ€ เจคเจฐเฉเจนเจพเจ‚ เจœเจพเจฃเจฆเจพ เจนเจพเจ‚; เจ‡เฉฑเจ• เจธเจฎเฉ‡เจ‚ เจตเจฟเฉฑเจš เจฎเฉˆเจ‚ เจฐเจฟเจฎเฉ‹เจŸ เจฆเจซเจคเจฐเจพเจ‚, เจ•เจพเจฒ เจชเฉเจฐเจฌเฉฐเจงเจจ, เจ†เจฆเจฟ เจฆเฉเจ†เจฐเจพ เจตเฉฐเจก เจจเจพเจฒ เจ—เฉฑเจฒเจฌเจพเจค เจตเจฟเฉฑเจš เจจเฉเจ•เจธเจพเจจ เจฆเฉ€ เจŸเจฐเฉˆเจ•เจฟเฉฐเจ— เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเฉ€ เจธเฉ€เฅค เจŸเฉ‡เจฒเจจเฉˆเฉฑเจŸ เจฆเฉ‡ เจจเจพเจฒ, เจธเจญ เจ•เฉเจ เจตเฉ€ เจฌเจนเฉเจค เจธเจชเฉฑเจธเจผเจŸ เจนเฉˆ: เจ•เจจเฉˆเจ•เจธเจผเจจ เจ–เฉ‹เจฒเฉเจนเฉ‹, เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจญเฉ‡เจœเฉ‹ เจ…เจคเฉ‡ เจœเจตเจพเจฌ เจชเฉœเฉเจนเฉ‹เฅค เจฎเฉˆเจ‚ เจ‡เจนเฉ€ เจ•เฉ€เจคเจพ, เจชเจฐ เจจเจคเฉ€เจœเฉ‡ เจจเฉ‡ เจฎเฉˆเจจเฉ‚เฉฐ เจจเจฟเจฐเจพเจธเจผ เจ•เฉ€เจคเจพเฅค

เจœเจผเฉˆเจฌเจฟเจ•เจธ เจตเจฟเฉฑเจš เจŸเฉ‡เจฒเจจเฉˆเฉฑเจŸ เจฒเฉ€เจจเจ•เจธ เจ•เฉฐเจธเฉ‹เจฒ เจฆเฉ‡ เจธเจฎเจพเจจ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจ‡เจน เจฅเฉ‹เฉœเจพ เจธเจฐเจฒ เจนเฉˆ เจ…เจคเฉ‡ เจฎเจฟเจ†เจฐเฉ€ เจ…เจงเจฟเจ•เจพเจฐ เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก เจฒเจˆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค เจœเฉ‡เจ•เจฐ เจชเฉเจฐเจฎเจพเจฃเฉ€เจ•เจฐเจจ เจคเจฐเจ• เจตเฉฑเจ–เจฐเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจฒเฉŒเจ—เจ‡เจจ/เจชเจพเจธเจตเจฐเจก เจœเฉ‹เฉœเฉ‡ เจฒเจˆ เจ•เฉ‹เจˆ เจฌเฉ‡เจจเจคเฉ€ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจคเจพเจ‚ เจ‡เฉฑเจ• เจ—เจฒเจคเฉ€ เจ†เจ‰เจ‚เจฆเฉ€ เจนเฉˆเฅค เจ…เจงเจฟเจ•เจพเจฐ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเฉ‚เฉฐ เจฌเจพเจˆเจชเจพเจธ เจ•เจฐเจจ เจฆเฉ€เจ†เจ‚ เจตเจฟเจ…เจฐเจฅ เจ•เฉ‹เจธเจผเจฟเจธเจผเจพเจ‚ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจŸเฉˆเจฒเจจเฉˆเฉฑเจŸ เจฎเฉ‹เจกเฉ€เจŠเจฒ เจฆเฉ‡ เจธเจฐเฉ‹เจค เจ•เฉ‹เจก เจจเฉ‚เฉฐ เจฆเฉ‡เจ–เจฃเจพ เจฒเจพเจญเจฆเจพเจ‡เจ• เจธเฉ€เฅค

เจฎเฉˆเจจเฉ‚เฉฐ เจ…เจนเจฟเจธเจพเจธ เจนเฉ‹เจ‡เจ† เจ•เจฟ เจœเจฆเฉ‹เจ‚ เจคเฉฑเจ• เจฐเจตเจพเจ‡เจคเฉ€ เจฒเฉŒเจ—เจ‡เจจ เจ…เจคเฉ‡ เจชเจพเจธเจตเจฐเจก เจฌเฉ‡เจจเจคเฉ€ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเฉ€, เจฎเฉˆเจ‚ เจ…เฉฑเจ—เฉ‡ เจจเจนเฉ€เจ‚ เจตเจงเจพเจ‚เจ—เจพเฅค เจธเจฟเจฐเจซเจผ เจฎเจœเจผเฉ‡ เจฒเจˆ, เจฎเฉˆเจ‚ เจ•เฉ‹เจก เจคเฉ‹เจ‚ เจ…เจงเจฟเจ•เจพเจฐ เจจเจพเจฒ เจธเจฌเฉฐเจงเจค เจนเจฐ เจšเฉ€เจœเจผ เจจเฉ‚เฉฐ เจนเจŸเจพ เจฆเจฟเฉฑเจคเจพ เจนเฉˆ เจ…เจคเฉ‡ เจนเจฐ เจšเฉ€เจœเจผ เจจเฉ‚เฉฐ เจฆเฉเจฌเจพเจฐเจพ เจ‡เจ•เฉฑเจ เจพ เจ•เฉ€เจคเจพ เจนเฉˆเฅค เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ! เจชเจฐ เจ‡เจน เจฒเฉ‹เฉœเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉ‚เจฐเจพ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพเฅค เจฒเฉฐเจ— เจœเจพเจ“โ€ฆ

เจ†เจ‰ เจ–เฉ‹เจœ เจตเฉฑเจฒ เจตเจพเจชเจธ เจ†เจ‰เจ‚เจฆเฉ‡ เจนเจพเจ‚

เจฎเฉˆเจ‚ เจเจ†เจฐเจ†เจˆ เจฆเจธเจคเจพเจตเฉ‡เจœเจผเจพเจ‚ เจจเฉ‚เฉฐ เจฆเฉเจฌเจพเจฐเจพ เจชเฉœเฉเจนเจฟเจ†, เจตเจพเจงเฉ‚ เจŸเฉˆเจธเจŸ เจ•เจฐเจตเจพเจ - เจ‡เฉฑเจฅเฉ‡ เจ•เฉ‹เจˆ เจธเจฟเจช เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจ เจจเจนเฉ€เจ‚ เจนเจจเฅค เจฆเจพเจ…เจตเจค เจนเจจ, เจ—เฉฑเจฒเจฌเจพเจค เจนเจจ, เจฌเฉเจฐเฉ€เจš เจนเจจ, เจชเจฐ เจ•เฉ‹เจˆ เจฐเจœเจฟเจธเจŸเจฐเฉ‡เจธเจผเจจ เจจเจนเฉ€เจ‚ เจนเจจ. เจ•เจฟเจธเฉ‡ เจธเจฎเฉ‡เจ‚ เจฎเฉˆเจ‚ เจ‡เจน เจตเฉ€ เจธเฉ‹เจšเจฟเจ†, เจ•เฉ€ เจธเจพเจจเฉ‚เฉฐ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจ—เจฟเจฐเจเจพเจ‚ เจฆเฉ€ เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ?

เจ‡เฉฑเจ• เจฎเจœเจผเจพเจ•เฉ€เจ† เจ‡เจคเจซเจผเจพเจ• เจจเจพเจฒ, เจ‡เจธ เจธเจฎเฉ‡เจ‚ เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจคเฉ‹เจ‚ เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจฌเฉ‡เจจเจคเฉ€ เจ†เจ‰เจŸเจ—เฉ‹เจ‡เฉฐเจ— เจ•เจพเจฒเจพเจ‚ เจตเจฟเฉฑเจš เจธเจฎเฉฑเจธเจฟเจ† เจฆเฉ‡ เจจเจพเจฒ เจ†เจ‰เจ‚เจฆเฉ€ เจนเฉˆเฅค เจธเจฎเฉฑเจธเจฟเจ† เจ‡เจน เจธเฉ€ เจ•เจฟ SIP เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจ เจฐเฉเจ• เจฐเจนเฉ€ เจธเฉ€ เจ…เจคเฉ‡ เจธเจฟเจฐเจซเจผ เจฎเฉ‹เจกเฉ€เจŠเจฒ เจจเฉ‚เฉฐ เจฐเฉ€เจฌเฉ‚เจŸ เจ•เจฐเจ•เฉ‡ เจนเฉฑเจฒ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€เฅค

asterisk -rx "sip reload"

เจตเฉˆเฉฑเจฌ 'เจคเฉ‡ AMI เจคเฉฑเจ• เจชเจนเฉเฉฐเจš เจ•เจฐเจจเจพ เจฌเจนเฉเจค เจตเจงเฉ€เจ† เจนเฉ‹เจตเฉ‡เจ—เจพ: เจ‡เจน เจธเจพเจฐเฉ€เจ†เจ‚ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐ เจฆเฉ‡เจตเฉ‡เจ—เจพ, เจฎเฉˆเจ‚ เจธเฉ‹เจšเจฟเจ†. เจฎเฉˆเจ‚ เจ‡เจธ เจฆเจฟเจธเจผเจพ เจตเจฟเฉฑเจš เจ–เฉ‹เจฆเจฃเจพ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจฆเจพ เจนเจพเจ‚, เจ…เจคเฉ‡ เจธเจผเจพเจฌเจฆเจฟเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจชเจนเจฟเจฒเฉ€ เจ–เฉ‹เจœ เจฒเจพเจˆเจจ เจ…เจงเจฟเจ•เจพเจฐเจค เจ…เจธเจŸเฉ‡เจฐเจฟเจธเจ• เจฆเจธเจคเจพเจตเฉ‡เจœเจผเจพเจ‚ เจตเฉฑเจฒ เจฒเฉˆ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจœเฉ‹ เจ•เจนเจฟเฉฐเจฆเฉ€ เจนเฉˆ เจ•เจฟ เจฎเฉ‡เจฐเฉ‡ เจ•เฉฐเจฎเจพเจ‚ เจฒเจˆ เจ‡เฉฑเจ• เจตเจฟเจ•เจฒเจช เจนเฉˆ. เจตเฉˆเฉฑเจฌ เจฏเฉ‹เจ— เจซเจพเจˆเจฒ เจตเจฟเฉฑเจš /etc/asterisk/manager.conf, เจœเจฟเจธ เจจเฉ‚เฉฐ เจญเจพเจ— เจตเจฟเฉฑเจš เจนเจพเจ‚ 'เจคเฉ‡ เจธเฉˆเฉฑเจŸ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ [เจ†เจฎ]

เจ‡เจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจซเจพเจฐเจฎ เจฆเฉ€ เจจเจฟเจฏเจฎเจค เจตเฉˆเฉฑเจฌ เจฌเฉ‡เจจเจคเฉ€ เจฆเฉเจ†เจฐเจพ http://ats:8089/mxml?action=SIPshowregistry เจธเจพเจจเฉ‚เฉฐ เจธเจพเจฐเฉ€ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฎเจฟเจฒเจฆเฉ€ เจนเฉˆเฅค

FreePBX เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจคเฉเจธเฉ€เจ‚ เจตเฉˆเฉฑเจฌ เจฆเฉเจ†เจฐเจพ เจ‡เจธ เจตเจฟเจ•เจฒเจช เจจเฉ‚เฉฐ เจธเจฎเจฐเฉฑเจฅ เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹; เจคเฉเจนเจพเจจเฉ‚เฉฐ manager.conf เจซเจพเจˆเจฒ เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจ•เจฐเจ•เฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ•เฉฐเจธเฉ‹เจฒ เจฆเฉเจ†เจฐเจพ เจธเจฎเจฐเฉฑเจฅ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค FreePBX เจ‡เจธ เจจเฉ‚เฉฐ เจจเจนเฉ€เจ‚ เจฎเจฟเจŸเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจตเฉˆเฉฑเจฌ เจฐเจพเจนเฉ€เจ‚ เจธเฉฐเจฐเจšเจจเจพ เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจเฅค

เจฎเฉˆเจ‚ เจฒเฉฐเจฌเฉ‡ เจธเจฎเฉ‡เจ‚ เจคเฉ‹เจ‚ เจตเฉฑเจ–-เจตเฉฑเจ– เจ•เจฟเจธเจฎเจพเจ‚ เจฆเฉ‡ Asterisk เจเจ•เฉ€เจ•เจฐเจฃเจพเจ‚ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เฉ€เจคเจพ เจนเฉˆ, เจชเจฐ เจฎเฉˆเจ‚ เจ‡เจธ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ เจฆเจพ เจ•เจฟเจคเฉ‡ เจตเฉ€ เจœเจผเจฟเจ•เจฐ เจจเจนเฉ€เจ‚ เจฆเฉ‡เจ–เจฟเจ† เจนเฉˆเฅค เจฎเฉˆเจ‚ เจนเฉˆเจฐเจพเจจ เจธเฉ€ เจ•เจฟ เจ•เฉ‹เจˆ เจตเฉ€ เจชเฉ€เจฌเฉ€เจเจ•เจธ เจจเจพเจฒ เจ—เฉฑเจฒเจฌเจพเจค เจ•เจฐเจจ เจฆเฉ‡ เจ‡เจธ เจขเฉฐเจ— เจฆเจพ เจตเจฐเจฃเจจ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ. เจ‡เจธ เจตเจฟเจธเจผเฉ‡ 'เจคเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฒเฉฑเจญเจฃ เจฒเจˆ เจ‡เจน เจตเจฟเจธเจผเฉ‡เจธเจผ เจคเฉŒเจฐ 'เจคเฉ‡ เจฒเจพเจญเจฆเจพเจ‡เจ• เจธเฉ€: เจ‡เฉฑเจฅเฉ‡ เจ…เจฎเจฒเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡ เจ•เฉเจ เจตเฉ€ เจจเจนเฉ€เจ‚ เจนเฉˆ เจœเจพเจ‚ เจ‡เจน เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจตเฉฑเจ–เจฐเฉ‡ เจ•เฉฐเจฎเจพเจ‚ เจฒเจˆ เจตเจฐเจคเจฟเจ† เจ—เจฟเจ† เจธเฉ€.

WEB AMI - เจ•เจฟเจธ เจ•เจฟเจธเจฎ เจฆเจพ เจœเจพเจจเจตเจฐ?

เจ‡เฉฑเจ• เจตเจฟเจ•เจฒเจช เจธเจผเจพเจฎเจฒ เจ•เจฐเจจเจพ เจตเฉˆเฉฑเจฌ เจฏเฉ‹เจ— เจซเจพเจˆเจฒ เจ•เจฐเจจ เจฒเจˆ manager.conf เจตเฉˆเฉฑเจฌ เจฐเจพเจนเฉ€เจ‚ ATS เจชเฉเจฐเจฌเฉฐเจงเจจ เจคเฉฑเจ• เจชเฉ‚เจฐเฉ€ เจชเจนเฉเฉฐเจš เจชเฉเจฐเจฆเจพเจจ เจ•เฉ€เจคเฉ€เฅค เจ‡เฉฑเจ• เจจเจฟเจฏเจฎเจค AMI เจฆเฉเจ†เจฐเจพ เจ‰เจชเจฒเจฌเจง เจธเจพเจฐเฉ€เจ†เจ‚ เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจนเฉเจฃ เจตเฉˆเฉฑเจฌ 'เจคเฉ‡ เจนเจจ, เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจธเจพเจ•เจŸ เจฆเฉเจ†เจฐเจพ PBX เจคเฉ‹เจ‚ เจ‡เจตเฉˆเจ‚เจŸเจพเจ‚ เจจเฉ‚เฉฐ เจธเฉเจฃ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจ“เจชเจฐเฉ‡เจธเจผเจจ เจฆเจพ เจธเจฟเจงเจพเจ‚เจค เจ•เฉฐเจธเฉ‹เจฒ AMI เจคเฉ‹เจ‚ เจตเฉฑเจ–เจฐเจพ เจจเจนเฉ€เจ‚ เจนเฉˆ. เจ‡เจธ เจตเจฟเจ•เจฒเจช เจจเฉ‚เฉฐ เจ•เจฟเจฐเจฟเจ†เจธเจผเฉ€เจฒ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจคเฉเจธเฉ€เจ‚ เจนเฉ‡เจ เจฒเฉ‡ เจชเจคเฉ‡ 'เจคเฉ‡ PBX เจจเจพเจฒ เจธเฉฐเจชเจฐเจ• เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹:

https://ats:8089/manager - เจœเจพเจ‚เจš เจ…เจคเฉ‡ เจนเฉฑเจฅเฉ€เจ‚ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจญเฉ‡เจœเจฃ เจฒเจˆ เจ‡เฉฑเจ• เจธเจงเจพเจฐเจจ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจตเจพเจฒเจพ เจ‡เฉฑเจ• เจตเฉˆเจฌ เจชเฉ‡เจœเฅค เจธเจพเจฐเฉ‡ เจœเจตเจพเจฌ เจชเฉœเฉเจนเจจเจฏเฉ‹เจ— HTML เจตเจฟเฉฑเจš เจซเจพเจฐเจฎเฉˆเจŸ เจ•เฉ€เจคเฉ‡ เจ—เจ เจนเจจเฅค เจจเจฟเจ—เจฐเจพเจจเฉ€ เจฒเจˆ เจฌเจนเฉเจค เจขเฉเจ•เจตเจพเจ‚ เจจเจนเฉ€เจ‚ เจนเฉˆ.
https://ats:8089/rawman โ€” เจธเจฟเจฐเจซเจผ เจŸเฉˆเจ•เจธเจŸ เจ†เจ‰เจŸเจชเฉเฉฑเจŸ, เจ•เฉฐเจธเฉ‹เจฒ AMI เจฆเฉ‡ เจธเจฎเจพเจจ เจซเจพเจฐเจฎเฉˆเจŸ
https://ats:8089/mxml - เจธเจฟเจฐเจซเจผ เจŸเฉˆเจ•เจธเจŸ เจ†เจ‰เจŸเจชเฉเฉฑเจŸ, XML เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจšเฅค เจธเจพเจกเฉ‡ เจฒเจˆ เจ…เจจเฉเจ•เฉ‚เจฒ เจนเฉˆ!

เจœเจผเฉˆเจฌเจฟเจ•เจธ เจจเฉ‚เฉฐ เจฌเจ•เจธเฉ‡ เจฆเฉ‡ เจฌเจพเจนเจฐ เจคเจพเจฐเฉ‡ เจฆเฉ‡ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐเจจเจพ เจนเฉˆ

เจซเจฟเจฐ เจฎเฉˆเจ‚ เจธเฉ‹เจšเจฟเจ†: โ€œเจ‡เจน เจนเฉฑเจฒ เจนเฉˆ! เจนเฉเจฃ เจธเจญ เจ•เฉเจ เจคเจฟเจ†เจฐ เจนเฉ‹ เจœเจพเจตเฉ‡เจ—เจพ! เจ†เจธเจพเจจ-เจชเฉ€เจœเจผเฉ€ เจจเจฟเฉฐเจฌเฉ‚ เจจเจฟเจšเฉ‹เฉœ," เจชเจฐ เจ‡เจน เจ–เฉเจธเจผเฉ€ เจ•เจฐเจจ เจฒเจˆ เจฌเจนเฉเจค เจœเจฒเจฆเฉ€ เจธเฉ€เฅค เจธเจพเจจเฉ‚เฉฐ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ, เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€ เจ•เจพเจฐเจตเจพเจˆ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• GET เจฌเฉ‡เจจเจคเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพ เจ•เจพเจซเจผเฉ€ เจนเฉˆ เจ•เจพเจฐเจตเจพเจˆ, เจœเฉ‹ เจ•เจฟ เจœเจตเจพเจฌ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ€เจ†เจ‚ เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจเจพเจ‚ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจฆเฉ€ เจธเฉ‚เจšเฉ€ เจฆเฉ‡ เจจเจพเจฒ xml เจตเจพเจชเจธ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจน เจธเจญ เจฌเจนเฉเจค เจตเจงเฉ€เจ† เจนเฉˆ, เจชเจฐ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เฉ‚เจ•เฉ€ เจคเฉ‹เจ‚ เจธเฉˆเจธเจผเจจ เจจเฉ‚เฉฐ เจฏเจพเจฆ เจฐเฉฑเจ–เจฃ เจฒเจˆ เจ…เจงเจฟเจ•เจพเจฐ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจฌเฉเจฐเจพเจŠเจœเจผเจฐ เจตเจฟเฉฑเจš เจŸเฉˆเจธเจŸ เจ•เจฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจคเฉเจธเฉ€เจ‚ เจ‡เจธ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจฌเจพเจฐเฉ‡ เจจเจนเฉ€เจ‚ เจธเฉ‹เจšเจฆเฉ‡เฅค

เจ…เจงเจฟเจ•เจพเจฐเจค เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†

เจชเจนเจฟเจฒเจพเจ‚ เจ…เจธเฉ€เจ‚ เจชเจคเฉ‡ เจจเฉ‚เฉฐ เจธเฉฐเจฌเฉ‹เจงเจจ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚ http://ats:8089/mxml?action=login&username=zabbix&secret=zabbix, เจœเจตเจพเจฌ เจตเจฟเฉฑเจš, เจธเจฐเจตเจฐ เจธเจพเจจเฉ‚เฉฐ เจ…เจงเจฟเจ•เจพเจฐ เจธเฉˆเจธเจผเจจ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจ•เฉ‚เจ•เฉ€ เจญเฉ‡เจœเจฆเจพ เจนเฉˆเฅค เจ‡เฉฑเจ• HTTP เจฌเฉ‡เจจเจคเฉ€ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆ:

https://ats:8089/mxml?action=login&username=zabbix&secret=zabbix

Host: ats:8089
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:77.0) Gecko/20100101 Firefox/77.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate, br
DNT: 1
Connection: keep-alive
Upgrade-Insecure-Requests: 1

เจ‰เฉฑเจคเจฐ:

GET: HTTP/1.1 200 OK
Server: Asterisk/13.29.2
Date: Thu, 18 Jun 2020 17:41:19 GMT
Cache-Control: no-cache, no-store
Content-type: text/xml
Set-Cookie: mansession_id="6f5de42c"; Version=1; Max-Age=600
Pragma: SuppressEvents
Content-Length: 146

<ajax-response>
<response type="object" id="unknown">
<generic response="Success" message="Authentication accepted"/>
</response>
</ajax-response>

เจ‰เฉฑเจฅเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฒเจˆ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฒเฉ‹เฉœ เจนเฉˆ mansession_id="6f5de42c", เจ…เจฐเจฅเจพเจค เจชเฉเจฐเจฎเจพเจฃเจฟเจ•เจคเจพ เจ•เฉ‚เจ•เฉ€ เจ–เฉเจฆเฅค
เจธเจฎเฉฑเจ—เจฐเฉ€ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจธเจฟเจฐเจซเจผ เจœเจตเจพเจฌ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ "เจชเฉเจฐเจฎเจพเจฃเจฟเจ•เจคเจพ เจธเจตเฉ€เจ•เจพเจฐ เจ•เฉ€เจคเฉ€ เจ—เจˆ" เจ…เฉฑเจ—เฉ‡, เจชเฉ€เจฌเฉ€เจเจ•เจธ เจธเจฐเจตเจฐ เจฆเฉ€เจ†เจ‚ เจธเจพเจฐเฉ€เจ†เจ‚ เจ•เจพเจฒเจพเจ‚ เจฒเจˆ, เจธเจพเจจเฉ‚เฉฐ เจฌเฉ‡เจจเจคเฉ€ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจชเฉเจฐเจฎเจพเจฃเฉ€เจ•เจฐเจจ เจ•เฉ‚เจ•เฉ€ เจธเจผเจพเจฎเจฒ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡เจ—เฉ€เฅค

https://ats:8089/mxml?action=SIPpeers

Host: ats:8089
Connection: close
Cookie: mansession_id="6f5de42c"

เจ‡เฉฑเจฅเฉ‡ เจชเฉœเฉเจนเฉ‹ เจ•เจฟ เจชเฉเจฐเจฎเจพเจฃเฉ€เจ•เจฐเจจ เจ•เฉ‚เจ•เฉ€ เจ•เจฟเจตเฉ‡เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจนเฉ‹เจฐ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจ•เจฟเจตเฉ‡เจ‚ เจตเจฐเจคเจฃเจพ เจนเฉˆ: โ€œเจœเจผเฉˆเจฌเจฟเจ•เจธ - เจฎเฉˆเจ•เจฐเฉ‹ เจธเฉ€เจฎเจพเจตเจพเจ‚ เจฆเจพ เจตเจฟเจธเจคเจพเจฐ เจ•เจฐเจจเจพยป

Zabbix เจตเจฟเฉฑเจš เจŸเจฐเฉˆเจ•เจฟเฉฐเจ— เจคเฉฑเจค เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจฎเฉˆเจ‚ เจ†เจŸเฉ‹ เจกเจฟเจŸเฉˆเจ•เจธเจผเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจพเจ‚เจ—เจพเฅค

เจ†เจŸเฉ‹ เจ–เฉ‹เจœ

เจ†เจชเจฃเฉ‡ เจ†เจช เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฆเจพ เจชเจคเจพ เจฒเจ—เจพเจ‰เจฃ เจ…เจคเฉ‡ เจชเฉ€เจ…เจฐ เจธเจŸเฉ‡เจŸเจพเจ‚ เจจเฉ‚เฉฐ เจŸเจฐเฉˆเจ• เจ•เจฐเจจ เจฒเจˆ, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ‡ เจชเจคเฉ‡ 'เจคเฉ‡ เจธเฉฐเจชเจฐเจ• เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ: https://ats:8089/mxml?action=SIPshowregistry เจœ https://ats:8089/mxml?action=SIPpeers

เจœเจตเจพเจฌ เจตเจฟเฉฑเจš, PBX เจธเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• XML เจœเจตเจพเจฌ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ:

<ajax-response>
<response type="object" id="unknown">
<generic response="Success" eventlist="start" message="Registrations will follow"/>
</response>
...
<response type="object" id="unknown">
<generic event="RegistryEntry" host="login.mtt.ru" port="5060" username="111111" domain="login.mtt.ru" domainport="5060" refresh="105" state="Registered" registrationtime="1592502142"/>
</response>
<response type="object" id="unknown">
<generic event="RegistryEntry" host="voip.uiscom.ru" port="5060" username="222222" domain="voip.uiscom.ru" domainport="5060" refresh="105" state="Registered" registrationtime="1592502142"/>
</response>
<response type="object" id="unknown">
<generic event="RegistryEntry" host="voip.uiscom.ru" port="5060" username="333333" domain="voip.uiscom.ru" domainport="5060" refresh="105" state="Registered" registrationtime="1592502142"/>
</response>
...
</ajax-response>

เจœเจตเจพเจฌ เจตเจฟเฉฑเจš เจฌเจนเฉเจค เจธเจพเจฐเจพ เจ•เฉ‚เฉœเจพ เจนเฉˆ, เจ‡เจธ เจฒเจˆ เจชเฉเจฐเฉ€เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจตเจฟเฉฑเจš เจ…เจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจŸเฉˆเจ‚เจชเจฒเฉ‡เจŸ เจฆเฉเจ†เจฐเจพ เจซเจฟเจฒเจŸเจฐ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚ เจเจ•เจธเจชเจพเจฅ: //เจœเจตเจพเจฌ/เจ†เจฎ[@เจนเฉ‹เจธเจŸ]
เจซเจฟเจฐ เจฎเจœเจผเจพ เจธเจผเฉเจฐเฉ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค เจ–เฉ‹เจœ เจฆเฉ‡ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจ…เจคเฉ‡ เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจคเฉŒเจฐ 'เจคเฉ‡ เจคเฉฑเจค เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ, เจœเจตเจพเจฌ JSON เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจนเฉ‹เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค XML เจ†เจŸเฉ‹ เจ–เฉ‹เจœเจพเจ‚ เจฒเจˆ เจธเจฎเจฐเจฅเจฟเจค เจจเจนเฉ€เจ‚ เจนเฉˆเฅค

XML เจจเฉ‚เฉฐ JSON เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฃ เจฒเจˆ, เจฎเฉˆเจจเฉ‚เฉฐ เจ†เจŸเฉ‹ เจฐเจฟเจชเจฒเฉ‡เจธเจฎเฉˆเจ‚เจŸ เจฆเฉ‡ เจจเจพเจฒ เจฅเฉ‹เฉœเจพ เจœเจฟเจนเจพ เจ–เฉ‡เจกเจฃเจพ เจชเจฟเจ†, เจœเจฟเจธ เจฒเจˆ เจฎเฉˆเจ‚ เจœเฉ‡.เจเฉฑเจธ.

เจœเจผเฉˆเจฌเจฟเจ•เจธ เจจเฉ‚เฉฐ เจฌเจ•เจธเฉ‡ เจฆเฉ‡ เจฌเจพเจนเจฐ เจคเจพเจฐเฉ‡ เจฆเฉ‡ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐเจจเจพ เจนเฉˆ

เจ‡เฉฑเจ• เจฆเจฟเจฒเจšเจธเจช เจฌเจฟเฉฐเจฆเฉ‚: ATS เจœเจตเจพเจฌ เจตเจฟเฉฑเจš, เจธเจพเจฐเฉ‡ เจฎเจพเจชเจฆเฉฐเจก เจธเจฟเฉฐเจ—เจฒ เจ•เฉ‹เจŸเจธ เจจเจพเจฒ เจ˜เจฟเจฐเฉ‡ เจนเฉ‹เจ เจนเจจ, เจ…เจคเฉ‡ เจŸเฉˆเจ‚เจชเจฒเฉ‡เจŸ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ //เจœเจตเจพเจฌ/เจ†เจฎ[@เจนเฉ‹เจธเจŸ] เจ‰เจน เจกเจฌเจฒ เจฒเฉ‹เจ•เจพเจ‚ เจฆเฉเจ†เจฐเจพ เจฌเจฆเจฒเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจเฅค

เจคเฉฑเจค เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ, เจ…เจธเฉ€เจ‚ XML เจœเจตเจพเจฌ (เจนเฉเจฃ JSON) เจคเฉ‹เจ‚ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค

เจœเจผเฉˆเจฌเจฟเจ•เจธ เจจเฉ‚เฉฐ เจฌเจ•เจธเฉ‡ เจฆเฉ‡ เจฌเจพเจนเจฐ เจคเจพเจฐเฉ‡ เจฆเฉ‡ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจ•เจจเฉˆเจ•เจŸ เจ•เจฐเจจเจพ เจนเฉˆ

SIP เจฐเจœเจฟเจธเจŸเจฐเฉ€

เจธเจฟเจช เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฒเจˆ เจ…เจธเฉ€เจ‚ เจคเจฟเฉฐเจจ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚: เจ‰เจชเจญเฉ‹เจ—เฉ€, เจนเฉ‹เจธเจŸ, เจชเฉ‹เจฐเจŸ. เจฎเฉˆเจ‚ เจคเฉฑเจค เจฆเฉ‡ เจจเจพเจฎ เจคเฉ‹เจ‚ เจ–เฉเจธเจผ เจธเฉ€ [เจˆเจฎเฉ‡เจฒ เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค]: 5060, เจฎเฉˆเจจเฉ‚เฉฐ เจ•เฉ‹เจˆ เจ…เจœเจฟเจนเฉ€ เจธเจฅเจฟเจคเฉ€ เจจเจนเฉ€เจ‚ เจฎเจฟเจฒเฉ€ เจนเฉˆ เจœเจฟเฉฑเจฅเฉ‡ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจธเจพเจฐเฉ‡ เจชเฉฐเจœ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจตเจฐเจคเจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค

เจฎเฉเฉฑเจ– เจคเฉฑเจค เจœเฉ‹ เจธเจพเจฐเฉ€เจ†เจ‚ เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจฆเจพ เจนเฉˆ, Asterisk - AMI SIPshowregistry. เจ‡เฉฑเจ• เจฎเจฟเฉฐเจŸ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจตเจพเจฐ เจ‡เจน เจ‡เฉฑเจ• GET เจฌเฉ‡เจจเจคเฉ€ เจ•เจฐเจฆเจพ เจนเฉˆ https://ats:8089/mxml?action=SIPshowregistry, เจœเจฟเจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจœเจตเจพเจฌ XML เจกเฉ‡เจŸเจพ เจจเฉ‚เฉฐ เจชเจพเจฐเจธ เจ•เจฐเจจ เจฒเจˆ เจธเจพเจฐเฉ‡ เจจเจฟเจฐเจญเจฐ เจคเฉฑเจคเจพเจ‚ เจจเฉ‚เฉฐ เจชเจพเจธ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจฎเฉˆเจ‚ เจนเจฐเฉ‡เจ• เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจ เจฒเจˆ เจ‡เฉฑเจ• เจคเฉฑเจค เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเจพเจ‚ เจœเฉ‹ เจ‡เจธ 'เจคเฉ‡ เจจเจฟเจฐเจญเจฐ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจน เจธเฉเจตเจฟเจงเจพเจœเจจเจ• เจนเฉˆ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ…เจธเฉ€เจ‚ เจ‡เฉฑเจ• เจฌเฉ‡เจจเจคเฉ€ เจตเจฟเฉฑเจš เจ…เฉฑเจช-เจŸเฉ‚-เจกเฉ‡เจŸ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚, เจจเจพ เจ•เจฟ เจนเจฐเฉ‡เจ• เจฌเฉ‡เจจเจคเฉ€ เจฒเจˆ เจตเฉฑเจ–เจฐเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡เฅค เจ‡เจธ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจ•เจฎเฉ€ เจนเฉˆ - เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฐ 'เจคเฉ‡ เจฒเฉ‹เจก.

100 เจจเจฟเจฐเจญเจฐ เจคเฉฑเจคเจพเจ‚ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจฎเฉˆเจ‚ เจฒเฉ‹เจก เจตเฉฑเจฒ เจงเจฟเจ†เจจ เจจเจนเฉ€เจ‚ เจฆเจฟเฉฑเจคเจพ, เจชเจฐ 1700 เจคเฉฑเจคเจพเจ‚ เจฆเฉ‡ เจจเจพเจฒ, เจ‡เจธ เจจเฉ‡ เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฐ 'เจคเฉ‡ เจ‡เฉฑเจ• เจงเจฟเจ†เจจ เจฆเฉ‡เจฃ เจฏเฉ‹เจ— 15 เจธเจ•เจฟเฉฐเจŸ เจฒเฉ‹เจก เจฆเจฟเฉฑเจคเจพ. เจ‡เจธ เจจเฉ‚เฉฐ เจงเจฟเจ†เจจ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เฉ‹ เจœเฉ‡เจ•เจฐ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจตเฉฑเจกเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเจฟเฉฑเจš เจจเจฟเจฐเจญเจฐ เจคเฉฑเจค เจนเจจเฅค

เจฒเฉ‹เจก เจจเฉ‚เฉฐ "เจซเฉˆเจฒเจฃ" เจœเจพเจ‚ เจ•เจฟเจธเฉ‡ เจคเฉฑเจค เจฒเจˆ เจตเฉฑเจ–-เจตเฉฑเจ– เจชเฉ‹เจฒเจฟเฉฐเจ— เจซเฉเจฐเฉ€เจ•เฉเจเจ‚เจธเฉ€ เจธเฉˆเฉฑเจŸ เจ•เจฐเจจ เจฆเฉ‡ เจตเจฟเจ•เจฒเจช เจตเจœเฉ‹เจ‚, เจคเฉเจธเฉ€เจ‚ เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจคเจฐเจ• เจจเฉ‚เฉฐ เจนเจฐเฉ‡เจ• เจคเฉฑเจค เจฒเจˆ เจตเฉฑเจ–เจฐเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡ เจญเฉ‡เจœ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

เจฎเฉˆเจ‚ เจชเฉเจฐเจพเจชเจค เจœเจพเจฃเจ•เจพเจฐเฉ€ เจจเฉ‚เฉฐ เจฎเฉเฉฑเจ– เจคเฉฑเจค เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ เจนเจพเจ‚เฅค เจชเจนเจฟเจฒเจพเจ‚, เจฎเฉˆเจจเฉ‚เฉฐ เจ‡เจธเจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจจเจนเฉ€เจ‚ เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฐเจฆเฉ€, เจ…เจคเฉ‡ เจฆเฉ‚เจœเจพ, เจœเฉ‡ เจœเจตเจพเจฌ 64K เจคเฉ‹เจ‚ เจตเฉฑเจง เจนเฉˆ, เจคเจพเจ‚ เจœเจผเฉˆเจฌเจฟเจ•เจธ เจ‡เจธเจจเฉ‚เฉฐ เจ•เฉฑเจŸ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ.

เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ…เจธเฉ€เจ‚ เจจเจฟเจฐเจญเจฐ เจคเฉฑเจค เจฒเจˆ เจ‡เฉฑเจ• เจชเฉ‚เจฐเจพ XML เจœเจตเจพเจฌ เจตเจฐเจคเจฆเฉ‡ เจนเจพเจ‚, เจธเจพเจจเฉ‚เฉฐ เจชเฉเจฐเฉ€-เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจตเจฟเฉฑเจš เจ‡เจธ เจคเฉฑเจค เจฆเจพ เจฎเฉเฉฑเจฒ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจฆเฉเจ†เจฐเจพ เจเจ•เจธเจชเจพเจฅ เจ‡เจน เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ:
string(//response/generic[@event="RegistryEntry"][@username="{#SIP_REGISTRY_USERNAME}"][@host="{#SIP_REGISTRY_HOST}"][@port="{#SIP_REGISTRY_PORT}"]/@ เจฐเจพเจœ)
เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจ เจธเจฅเจฟเจคเฉ€เจ†เจ‚ เจฒเจˆ, เจฎเฉˆเจ‚ เจŸเฉˆเจ•เจธเจŸ เจธเจฅเจฟเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€, เจชเจฐ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจ–เจฟเจ†เจคเจฎเจ• เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฟเจ†:

switch(value) {
  case 'Registered':
    return 1;
  case 'Unregistered':
    return 0;
  default:
    return -1;
}

SIP เจธเจพเจฅเฉ€

SIP เจฐเจœเจฟเจธเจŸเฉเจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ‡ เจธเจฎเจพเจจเจคเจพ เจฆเฉเจ†เจฐเจพ, Asterisk - AMI SIPshowregistry เจฆเจพ เจ‡เฉฑเจ• เจฎเฉเฉฑเจ– เจคเฉฑเจค เจนเฉˆ, เจœเจฟเจธ เจตเจฟเฉฑเจš เจจเจฟเจฐเจญเจฐ เจฒเฉ‹เจ•เจพเจ‚ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจ‡เจน เจฆเฉ‹ เจจเจฟเจฐเจญเจฐ เจคเฉฑเจค เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ:

  • เจชเจพเจ  เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจชเฉ€เจ…เจฐ เจธเจฅเจฟเจคเฉ€
  • เจกเจฟเจตเจพเจˆเจธ เจœเจตเจพเจฌ เจธเจฎเจพเจ‚ - เจœเฉ‡เจ•เจฐ เจธเจฅเจฟเจคเฉ€ เจ เฉ€เจ• เจนเฉˆ, เจคเจพเจ‚ เจกเจฟเจตเจพเจˆเจธ เจœเจตเจพเจฌ เจธเจฎเจพเจ‚ เจฒเจฟเจ–เจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจจเจนเฉ€เจ‚ เจคเจพเจ‚ "-1"

เจคเฉฑเจค เจฆเจพ เจฎเจพเจฐเจ— เจ†เจชเจฃเฉ‡ เจ†เจช เจตเจฟเฉฑเจš เจฅเฉ‹เฉœเจพ เจธเฉŒเจ–เจพ เจนเฉˆ เจเจ•เจธเจชเจพเจฅ:

เจธเจคเจฐ(//เจœเจตเจพเจฌ/เจ†เจฎ[@objectname="{#SIP_PEER_OBEJECTNAME}"]/@status)

เจฆเฉ‚เจœเฉ‡ เจคเฉฑเจค เจฒเจˆ เจฎเฉˆเจ‚ เจตเฉฑเจ– เจ•เจฐเจจ เจฒเจˆ JavaScript เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ€ เจœเจตเจพเจฌ เจธเจฎเจพเจ‚ เจชเฉ€เจ…เจฐ เจธเจฅเจฟเจคเฉ€ เจคเฉ‹เจ‚, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ‰เจน เจ‡เจ•เฉฑเจ เฉ‡ เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ:

if(value.substring(0,2) == 'OK'){
	return value.match(/(d+)/gm);
}
else {
	return -1;
}

เจธเจฟเฉฑเจŸเจพ

เจฌเจพเจ•เจธ เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจฆเจพ เจนเฉฑเจฒ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจคเฉเจฐเฉฐเจค เจธเจชเฉฑเจธเจผเจŸ เจจเจนเฉ€เจ‚ เจนเฉ‹ เจธเจ•เจฆเจพเฅค เจตเฉฑเจ–-เจตเฉฑเจ– เจชเฉเจฐเจฃเจพเจฒเฉ€เจ†เจ‚ เจตเจฟเจšเจ•เจพเจฐ เจฒเจšเจ•เจคเจพ เจ…เจคเฉ‡ เจชเฉ‹เจฐเจŸเฉ‡เจฌเจฟเจฒเจŸเฉ€ เจตเจงเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ

เจนเจฐ เจ•เฉ‹เจˆ เจ–เฉเจธเจผ เจ…เจคเฉ‡ เจ†เจธเจพเจจ เจเจ•เฉ€เจ•เจฐเจฃ! เจธเฉˆเฉฑเจŸเจ…เฉฑเจช เจฒเจˆ เจŸเฉˆเจฎเจชเจฒเฉ‡เจŸ เจ…เจคเฉ‡ เจจเจฟเจฐเจฆเฉ‡เจธเจผ GitHub.

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹