项目作者: getsolaris

项目描述 :
:school_satchel: Laravel 5 School Chatbot for Kakaotalk (Cafeteria, Schedule, Luck)
高级语言: PHP
项目地址: git://github.com/getsolaris/laravel-kakaobot.git
创建时间: 2018-07-01T15:58:10Z
项目社区:https://github.com/getsolaris/laravel-kakaobot

开源协议:MIT License

下载


Laravel 5 Chatbot for Kakao

Hi! artisan!!

라라벨 5.6 으로 개발된 카카오톡 채팅봇입니다. 현재 구현된 기능은 급식정보, 학사일정, 운세입니다.

교육청에서 제공되는 식단정보와 학사일정을 크롤링 해옵니다.

숫자 운세는 1부터 100까지 랜덤한 숫자를 반환해주고, 띠별 오늘의 운세는 네이트 운세를 크롤링 해옵니다.

중학교, 고등학교 지원됩니다.

Installation

  1. $ git clone https://github.com/getsolaris/laravel-kakaobot.git
  2. $ cd laravel-kakaobot
  3. $ composer install
  4. $ cp .env.example .env
  5. $ php artisan key:generate

Usage

교육청 코드 (country)

  • 서울시 교육청 : stu.sen.go.kr
  • 경기도 교육청 : stu.goe.go.kr
  • 강원도 교육청 : stu.kwe.go.kr
  • 전라남도 교육청 : stu.jne.go.kr
  • 전라북도 교육청 : stu.jbe.go.kr
  • 경상남도 교육청 : stu.gne.go.kr
  • 경상북도 교육청 : stu.kbe.go.kr
  • 부산광역시 교육청 : stu.pen.go.kr
  • 제주자치도 교육청 : stu.jje.go.kr
  • 충청남도 교육청 : stu.cne.go.kr
  • 충청북도 교육청 : stu.cbe.go.kr
  • 광주광역시 교육청 : stu.gen.go.kr
  • 울산광역시 교육청 : stu.use.go.kr
  • 대전광역시 교육청 : stu.dje.go.kr
  • 인천광역시 교육청 : stu.ice.go.kr
  • 대구광역시 교육청 : stu.dge.go.kr

학교 코드 (code)

학교 종류 (school)

  • 중학교 : middle
  • 고등학교 : high

코드 수정

app/Http/Controller/MultiMessageController.php 11번째 줄, 생성자의 매개변수(country, code, school)를 자신의 고등학교에 알맞게 수정합니다.

  • country : 교육청
  • code : 학교 코드
  • school : 학교 종류
  1. // app/Http/Controller/MultiMessageController.php
  2. public function __construct($country = 'stu.sen.go.kr', $code = 'B100000599', $school = 'high') {
  3. $this->country = $country;
  4. $this->code = $code;
  5. if ($school == 'high') $this->school = 4;
  6. elseif ($school == 'middle') $this->school = 3;
  7. else throw new \LogicException('존재하지 않는 학교 종류입니다.');
  8. }

업데이트 로그

  • [18.07.03][#1] 예외 처리 추가 및 함수 인자 통일
  • [18.07.03][#2] 급식 앞에 [중식] 키워드 제거 및 괄호 안에 공백 존재 경우 괄호를 포함한 공백 제거
  • [18.07.05][#3] 학교 종류 선택 가능 (중학교, 고등학교)
  • [18.07.08][#4] MessageController 와 MultiMessageController 코드 전반적으로 수정
    • 학교 일정 한글이 아닌 yyyy-mm(Y-m) 형식으로 출력
  • [18.07.21][#5] 운세 기능 추가(숫자 운세, 띠별 오늘의 운세)
  • [18.07.21][#6] KeyboardController 키보드처리 메소드 index 를 MessageController keyboard 메소드로 변경
    • $mainButtons 를 상수처리
  • [18.09.03][#7, #7.1] 급식 크롤링 후 출력 방식 변경 (전: 0번째 테이블 부터 날짜 별로 출력)
    • (후: 급식 테이블에서 날짜가 시작되는 부분 부터 출력)

Support Us

Mingeun Kim mingeun.k.k[at]gmail[dot]com

License

MIT license