Last active
October 5, 2021 08:26
-
-
Save 23Pstars/edaab005fd4a6c62491d570fb8bcb059 to your computer and use it in GitHub Desktop.
Code snippet of core functionalities inside Bot Telegram-SIA services
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
# Fungsi load tombol pada keyboard sebagai menu | |
# masing-masing untuk dosen dan mahasiswa | |
public static $_services = [ | |
self::_dosen => [ | |
self::_akademik, | |
self::_daftar_kelas, | |
self::_reset_password, | |
self::_presensi_kehadiran, | |
], | |
self::_mahasiswa => [ | |
self::_akademik, | |
self::_reset_password, | |
self::_daftar_krs, | |
self::_daftar_nilai, | |
self::_presensi_kuliah, | |
] | |
]; | |
# Update state untuk aksi pada masing-masing tombol | |
# untuk membentuk service-flow | |
$_update | |
->setType(Helpers::type_sia) | |
->setState(Helpers::state_sia_init); | |
Databases::_gi()->_update_insert($_update); | |
# Fungsi untuk request data ke API SIA | |
# sesuai jenis service yg diperlukan | |
public function _api($service, $data) | |
{ | |
return json_decode(file_get_contents(self::API_URI . DS . | |
Helpers::arr(self::$_endpoints, $service) . '?' . http_build_query($data), | |
false, stream_context_create(array( | |
'ssl' => array( | |
'verify_peer' => false, | |
'verify_peer_name' => false, | |
) | |
) | |
)), true); | |
} | |
# Memanggil fungsi API ke SIA | |
# sesuai dengan isi pesan dari client | |
$__resp = $this->_api($_update->getText(), [ | |
'telegram_id' => $_update->getChatId() | |
]); | |
# Mengirim pesan ke client | |
# dosen dan mahasiswa | |
Telegram::_gi()->_send_message(Helpers::$_bots[Helpers::_bot_unram], $_update->getChatId(), | |
Helpers::arr($__resp, 'message') | |
); | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment