
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ,
рдкреБрд╢ рд╕реВрдЪрдирд╛рдПрдВ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдпрд╛ рд╕реЗрд╡рд╛ рд╕реЗ рдЫреЛрдЯреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдВрджреЗрд╢ рд╣реИрдВ рдЬреЛ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдЬрдм рдЖрдк рд╕реАрдзреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдпрд╛ рд╕реЗрд╡рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реЛрддреЗ рд╣реИрдВред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рд╕реНрдореГрддрд┐ рдореЗрдВ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдЕрднрд╛рд╡ рдореЗрдВ рдРрд╕реА рд╕реВрдЪрдирд╛рдУрдВ рдХрд╛ рд▓рд╛рдн, рдЗрд╕реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╢рдХреНрддрд┐ рдФрд░ рдореЗрдореЛрд░реА рдкрд░ рдЦрд░реНрдЪ рдХрд░рдирд╛ред
рдореИрдВ рдпрд╣рд╛рдВ рджреВрд░рд╕реНрде рд╕реВрдЪрдирд╛рдУрдВ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрдХрдиреАрдХ рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣
рдореЗрд░реЗ рд╕рд╛рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рд╣реЛ рдЪреБрдХрд╛
рд╣реИ ред рдпрд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ: рд╕рдордп-рд╕рдордп рдкрд░ рдбреЗрдореЙрди рд╕рд░реНрд╡рд░ рдХреЛ рдкреЛрд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░, рдпрджрд┐ рдХреЛрдИ рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рд╣рдореЗрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИред
IOS рдХреЗ рд▓рд┐рдП, рд╡реЗ рдПрдВрдбреНрд░реЙрдЗрдб,
C2DM-GCM рдХреЗ рд▓рд┐рдП
APNS рдХреЗ рд╕рд╛рде рдЖрдП, рд▓реЗрдХрд┐рди рдореИрдВ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо (рд▓рд╛рдЙрдб)
рдкреБрд╢рдУрд╡рд░ рд╕реЗрд╡рд╛ рдФрд░ рдЗрд╕рдХреЗ php рд╕рд╛рдЗрдЯ рдХреЗ рд╕рд╛рде рдХрдиреЗрдХреНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдХрд╛рд░реНрдп рдЙрджрд╛рд╣рд░рдг
рдорд╛рди рд▓реЗрдВ рдХрд┐ рджрд┐рди рдореЗрдВ рдПрдХ рдмрд╛рд░ рд╣рдо рдкреНрд░рддрд┐ рджрд┐рди рдПрдХ рд╕рд╛рдЗрдЯ рдкрд░ рдЖрджреЗрд╢реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдЙрдирдХреЗ рдореВрд▓реНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рд╕рд╛рдЗрдЯ PHP рдФрд░ mySQL рдореЗрдВ рдХреБрдЫ рд╕реАрдПрдордПрд╕ рдкрд░ рдШреВрдорддреА рд╣реИ, рдореЗрдЬрдмрд╛рди рдХреЗ рдкрд╛рд╕ рд╕реНрдЯрд╛рдЗрд▓рд┐рд╢ рдЖрдИрдлреЛрди рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдлреЛрди рд╣реИрдВред
рд╕рдВрджреЗрд╢ рд╡рд┐рддрд░рдг рдХреА рддрд╛рддреНрдХрд╛рд▓рд┐рдХрддрд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдВрдХреЗрддрдХреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред
рдпрд╣ рдПрдХ рд╕рд╢рд░реНрдд рд░рдХреНрддрд╕реНрд░рд╛рд╡реА рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдЫреЛрдЯреА рдмрд╛рдд
рдкреБрд╢рдУрд╡рд░ рдПрдХ рдорд╛рдореВрд▓реА
рд╕реВрдЪрдирд╛ рд╕реЗрд╡рд╛ рд╣реИ , рд╕рд╛рде рд╣реА
рдЖрдИрдУрдПрд╕ рдФрд░
рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди, рдмреНрд▓реИрдХрдмреЗрд░реА рдФрд░ рдУрдПрд╕ рдПрдХреНрд╕ рдорд╛рдЙрдВрдЯреЗрди рд▓рд╛рдпрди рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдпреЛрдЬрдирд╛рдмрджреНрдз рд╢рд┐рд▓реНрдкред рд╕реЗрд╡рд╛ рдХрд╛ рдЕрдкрдирд╛
рдПрдкреАрдЖрдИ рд╣реИ , рдпрд╣ рдкреНрд░рддрд┐ рдорд╛рд╣ 7.5 рд╣рдЬрд╛рд░ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдореБрдлреНрдд рдореЗрдВ рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рд╕рдВрджреЗрд╢, 512 рд╡рд░реНрдгреЛрдВ рдХреА рд▓рдВрдмрд╛рдИ рдХреЗ рд╕рд╛рде рд╕рдВрджреЗрд╢ рдХреЗ рдореБрдЦреНрдп рдкрд╛рда рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рдмрдбрд╝рд╛ рд╢реАрд░реНрд╖рдХ, URL (рддрдм рд╕рдВрджреЗрд╢ рдХреА рд▓рдВрдмрд╛рдИ рдмрдврд╝рдХрд░ 500 рд╣реЛ рд╕рдХрддреА рд╣реИ) рдФрд░ рдЗрд╕рдХрд╛ рд╢реАрд░реНрд╖рдХ (рд╕рдм рдХреБрдЫ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЧрдард┐рдд рдмреНрд▓реЙрдХреЛрдВ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдРрд╕рд╛ рдЕрдВрддрд░ рд╣реИ)ред рдПрдХ рд╕рдВрджреЗрд╢ рдЪрдпрдирд┐рдд рдЪрдпрдирд┐рдд рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдкрд░ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ "рд╢рд╛рдВрдд" рдШрдВрдЯреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрдм рд╕реВрдЪрдирд╛рдУрдВ рдХреЛ рдЬрдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИ, рд╕рд╛рде рд╣реА рдбрд┐рд╡рд╛рдЗрд╕ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдЬрд┐рд╕рд╕реЗ рд╕реВрдЪрдирд╛рдПрдВ рдЖрдПрдВрдЧреАред
рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдЙрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рддрдХ рдкрд╣реБрдВрдЪрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЗрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рднреА рдбрд┐рд╡рд╛рдЗрд╕реЛрдВ рдХреЛ рдпрд╛ рдкрд╕рдВрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЕрдкрдирд╛ рдХреЛрдб рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рд╣реИред рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реЗрд╡рд╛ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдЙрдкрдХрд░рдг рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬреЛрдбрд╝реЗрдВ
рдкрдВрдЬреАрдХрд░рдг рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рд▓рдп рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рд╡рд╣ рддреБрд░рдВрдд рдЕрдкрдиреЗ рд╣реИрд╢ рдЯреЛрдХрди рджреЗрдЦрддрд╛ рд╣реИред рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдмрд╛рдж рдореЗрдВ рд╕реВрдЪрдирд╛рдПрдВ рднреЗрдЬреА рдЬрд╛рдПрдВрдЧреАред
рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬреЛ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рдЙрд╕реЗ рдЕрдкрдиреЗ рдлреЛрди / рдЯреИрдмрд▓реЗрдЯ / рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╕реНрдЯреЛрд░ рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдбрд╛рд▓рдирд╛ рд╣реЛрдЧрд╛ред
рд╕реЗрд╡рд╛ рдЬреЛрдбрд╝рдирд╛
рд╕реЗрд╡рд╛ рдЬреЛрдбрд╝рдирд╛ рдХреЛрдИ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдЕрдкрдиреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЦрд╛рддреЗ рд╕реЗ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ
рд▓рд┐рдП рдкреГрд╖реНрда рдкрд░
рдЬрд╛рдПрдВ , рдЬрд╣рд╛рдВ рдЙрддреНрдкрд╛рдж рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╣реИ:

рдЙрдкрдпреБрдХреНрдд рдлрд╝реАрд▓реНрдб рднрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЯреЛрдХрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИред рдореВрд▓ рд░реВрдк рд╕реЗ, рдпрд╣ рдПрдХ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреЗрдЬ рдмрд╛рдж рдореЗрдВ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рднреЗрдЬреЗ рдЧрдП рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рдПрдХ рд╕реБрдВрджрд░ рд╢реЗрдбреНрдпреВрд▓ рд╣реЛрдЧрд╛ред
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдЬреЛрдбрд╝рдирд╛
... рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдХреЛрдИ рднреА рдРрдкреНрд▓реАрдХреЗрд╢рди рдХрд┐рд╕реА рднреА рдпреВрдЬрд░ рдХреЛ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рднреЗрдЬ рд╕рдХрддреА рд╣реИ рдЕрдЧрд░ рдЙрд╕реЗ рдЙрд╕рдХрд╛ рдЯреЛрдХрди рдкрддрд╛ рд╣реИред рдЖрдмрд╛рджреА рд╕реЗ рдЯреЛрдХрди рдХреА рд╕реНрд╡реАрдХреГрддрд┐ рдЖрд╡реЗрджрди рдХреА рдЕрдВрддрд░рд╛рддреНрдорд╛ рдХреА рдЖрд╡рд╛рдЬ рдкрд░ рд░рд╣рддреА рд╣реИред рд╕рд╛рде рд╣реА рдиреНрдпреВрдЬрд╝рд▓реЗрдЯрд░реНрд╕ рд╕реЗ рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ред
рдПрдкреАрдЖрдИ
рдЫреЛрдЯрд╛ , рд╕рдорддрд▓ рдФрд░ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдпред POST рдЕрдиреБрд░реЛрдз рдореЗрдВ
api.pushover.net/1/messages.json рдпрд╛
api.pushover.net/1/messages.xml рдкрд░ рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП
, рдЖрдкрдХреЛ рдиреНрдпреВрдирддрдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
- рдЯреЛрдХрди - рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдпрд╛ рд╕реЗрд╡рд╛ рдХрд╛ рд╣реИрд╢ рдЯреЛрдХрдиред
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рд╣реИрд╢ рдЯреЛрдХрди рдЬрд┐рд╕реЗ рдЖрдк рдПрдХ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рднреЗрдЬ рд░рд╣реЗ рд╣реИрдВред
- рд╕рдВрджреЗрд╢ - рд╕рдВрджреЗрд╢ рдХрд╛ рдкрд╛рда рднрд╛рдЧред
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдЖрдк рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ:
- рдбрд┐рд╡рд╛рдЗрд╕ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреА рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛, рддрд╛рдХрд┐ рдЙрд╕рдХреЗ рд╕рднреА рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рддреБрд░рдВрдд рд╕реВрдЪрдирд╛рдПрдВ рди рднреЗрдЬреЗрдВ
- рд╢реАрд░реНрд╖рдХ - рд╕рдВрджреЗрд╢ рдХрд╛ рд╢реАрд░реНрд╖рдХ, рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рд╕реЗрд╡рд╛ рдХрд╛ рдирд╛рдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
- url - рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рд╡реЗрдм рдкреЗрдЬ рд╕реЗ рд▓рд┐рдВрдХ рдХрд░реЗрдВ
- url_title - рд▓рд┐рдВрдХ рдХрд╛ рд╢реАрд░реНрд╖рдХ
- рдкреНрд░рд╛рдердорд┐рдХрддрд╛ - рд╕рдВрджреЗрд╢ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛, рдЙрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рд▓рд┐рдП 1 рдкрд░ рд╕реЗрдЯ, рд╕рднреА "рд╢рд╛рдВрдд" рдШрдВрдЯреЗ рдФрд░ -1 рдЪреБрдк рд╕реВрдЪрдирд╛ рдХреЗ рд▓рд┐рдПред
- рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк - UNIX рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдЬрдм рдпрд╣ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдмрдирд╛рдИ рдЧрдИ рдереАред рд╕реЗрд╡рд╛ рд╡рд┐рддрд░рдг рд╕рдордп рд╕рд╛рд░рд┐рдгреА рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИред
рд╕рд░реНрд╡рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛
рд╕рд░реНрд╡рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ json рдпрд╛ xml рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ (рдЬрд┐рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ)ред
рдпрджрд┐ рд╕рдм рдХреБрдЫ рдареАрдХ рд░рд╣рд╛, рддреЛ 1 рдХреЗ рдмрд░рд╛рдмрд░
рд╕реНрдерд┐рддрд┐ рдлрд╝реАрд▓реНрдб рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЕрдиреНрдпрдерд╛,
рд╕реНрдерд┐рддрд┐ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдХреБрдЫ рдФрд░ рд╣реЛрдЧрд╛, рдФрд░
рддреНрд░реБрдЯрд┐ рдлрд╝реАрд▓реНрдб рдореЗрдВ рддреНрд░реБрдЯрд┐ рд╡рд┐рд╡рд░рдгреЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реЛрдЧреАред рдпрд╣рд╛рдБ рд╕рдлрд▓ рдФрд░ рдЕрд╕рдлрд▓ XML рдкреНрд░рд╕реНрддреБрддрд┐рдпрд╛рдБ рдХреЗ рд▓рд┐рдП рдирдореВрдирд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдБ рд╣реИрдВ:
<?xml version="1.0" encoding="UTF-8"?> <hash> <status type="integer">1</status> </hash>
рдФрд░
<?xml version="1.0" encoding="UTF-8"?> <hash> <token>invalid</token> <errors type="array"> <error>application token is invalid</error> </errors> <status type="integer">0</status> </hash>
рдкреАрдПрдЪрдкреА
рдореБрдЦреНрдп рдкреГрд╖реНрда рдкрд░ рдФрд░ рдЦрдВрдбреЛрдВ рдореЗрдВ рдлреИрдХреНрд╕ рдореЗрдВ "рджреЗрдЦреЛ рдпрд╣ рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИ!"
CURL рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рд░ рдЬрдЧрд╣ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рдЬрд╝рдлреАрдЧрд░рд┐рдо рдЕрдкрдиреА рдХрдХреНрд╖рд╛
рдЕрдм рдмрд┐рдирд╛ рд╕рд╛рдЗрдХрд┐рд▓ рдХреЗ рдХрд╣рд╛рдВ?
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рднреЗрдЬрдиреЗ рдХреА рд╕рдлрд▓рддрд╛ рдХреЛ рдпрд╛ рддреЛ рд╕рд╣реА / рдЧрд▓рдд рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╛ рд╕рд░реНрд╡рд░ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреВрд░реА рд╢реАрдЯ рддреБрд░рдВрдд рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред рд╣рд╛рдВ, рдЖрдо рддреМрд░ рдкрд░ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдирд╣реАрдВ рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрджрд┐ рд╕рд╛рдЗрдЯ рд╡рд┐рдЬрд╝рд┐рдЯрд░ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рддреЛ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдпрд╣ рдЬрд╛рдирдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдпрд╛ рд╡рд╣ рд╕рдВрджреЗрд╢ рдХреНрдпреЛрдВ рдирд╣реАрдВ рднреЗрдЬрд╛ рдЧрдпрд╛ред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рдо рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╕рдм рдХреБрдЫ рдмрджрд▓ рд░рд╣реЗ рд╣реИрдВ, рдХрдХреНрд╖рд╛рдПрдВ
рдЧреАрдерд╣рдм рдкрд░ рдЫреЛрдбрд╝ рджреА рд╣реИрдВред
рд╡рд░реНрдЧ PushoverException class PushoverException extends Exception { private $fMessages; public function __construct(array $aMessages) { parent::__construct('PushoverException exception'); $this->fMessages = $aMessages; } public function getMessages() { return empty($this->fMessages) ? array() : $this->fMessages; } }
рдХрдХреНрд╖рд╛ рдзрдХреНрдХрд╛ class Pushover { const C_API_URL = 'https://api.pushover.net/1/messages.json'; private $fProperties; private $fCurl;
рдиреНрдпреВрдирддрдо рд╕рдВрджреЗрд╢ рдЕрдм рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ, рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
$lPushover = new Pushover(' '); $lPushover->userToken = ' '; $lPushover->notificationMessage = ' '; try { $lPushover->send(); echo '<font color="green">Message sent</font>', PHP_EOL; } catch (PushoverException $aException) { echo '<font color="red">Error sending messages</font><br>', PHP_EOL; echo '<ul>', PHP_EOL; foreach($aException->getMessages() as $lMessage) echo '<li>', $lMessage, '</li>', PHP_EOL; echo '</ul>', PHP_EOL; }
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдкрд╣рд▓реЗ рд╣реА рд╕рдВрджреЗрд╢ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИред
рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░
рд╣рдо рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рджреВрд░рд╕реНрде рд╕реВрдЪрдирд╛ рд╕реЗрд╡рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдЬреЛ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдПрдВрдбреНрд░реЙрдЗрдб рдФрд░ рдЖрдИрдУрдПрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕рдВрджреЗрд╢ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рддреА рд╣реИред
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ PHP рд╕реЗ рд╕рд╛рдЗрдЯ рдкрд░ рд╕реВрдЪрдирд╛рдПрдВ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рд░реНрдп рдкреНрд░рдгрд╛рд▓реА рд╣реИред