개요
OneSignal + PostgreSQL 통합을 사용하면 PostgreSQL 데이터베이스에서 OneSignal로 사용자 지정 이벤트를 동기화하여 사용자 행동에 따라 자동화된 메시징 캠페인 및 Journey를 트리거할 수 있습니다.요구 사항
- Access to Event Streams for outbound message events (Plan limitations and overages apply)
- Access to Custom Events for inbound event syncing (Plan limitations and overages apply)
- Updated Account Plan (not available on free apps)
PostgreSQL
- PostgreSQL 9.6+ 또는 호환 가능한 데이터베이스
- 적절한 권한이 있는 데이터베이스 사용자
- OneSignal에서 PostgreSQL 인스턴스로의 네트워크 액세스
- 구조화된 행동 데이터가 포함된 이벤트 테이블
설정
1
OneSignal용 전용 사용자 생성
적절한 권한이 있는 전용 사용자 계정을 생성하세요:
2
이벤트 데이터에 권한 부여
이벤트 데이터가 포함된 스키마에 대한 읽기 액세스를 제공하세요:
3
OneSignal에 연결
OneSignal에서 Data > Integrations으로 이동하여 Add Integration을 클릭합니다.
- 목록에서 PostgreSQL을 선택하세요
- 연결 세부 정보를 입력하세요:
- Host: PostgreSQL 서버 호스트 이름
- Port: 일반적으로 5432
- Database: 데이터베이스 이름
- Username:
CENSUS - Password: 생성한 비밀번호
- 연결을 테스트하세요
- 이벤트 데이터가 포함된 테이블을 구성하세요
이벤트 데이터 매핑
를 OneSignal의 사용자 지정 이벤트 형식에 매핑합니다:Sync Key는 동기화 중 각 행의 고유 식별자로 지정하는 열입니다. OneSignal은 이를 사용하여 행이 이미 처리되었는지 감지하므로, 데이터를 다시 동기화해도 중복 이벤트가 생성되지 않습니다. 행마다 고유한 텍스트 값을 가진 열을 선택하세요. 불리언 값이나 여러 행에서 반복되는 값은 사용하지 마세요.
예시 이벤트 테이블 스키마
SQL 쿼리 모드
사용자 지정 SQL 쿼리를 작성하여 이벤트 데이터를 변환하세요:고급 네트워크 구성
OneSignal은 고급 네트워킹 제어를 사용하여 PostgreSQL 인스턴스에 연결할 수 있습니다:- IP 허용 목록: 방화벽 및
pg_hba.conf에 OneSignal의 IP 주소를 추가하세요 - SSH 터널링: 프라이빗 네트워크를 위해 베스천 호스트를 통해 연결하세요
- VPC 구성: 클라우드 환경 내에서 직접 연결하세요
- TLS 암호화: SSL/TLS를 사용하여 안전한 연결을 구성하세요
SSH 터널 설정
프라이빗 네트워크의 PostgreSQL 인스턴스의 경우:- SSH 사용자 생성: SSH 호스트에서 전용 사용자를 설정하세요
- 터널 구성: OneSignal 통합 설정에서 “Use SSH Tunnel”을 활성화하세요
- 키 페어 설치: OneSignal의 공개 키를
~/.ssh/authorized_keys에 추가하세요 - 연결 테스트: 터널 연결을 확인하세요
참고 사항
- 다중 스키마: 이벤트 데이터가 포함된 각 스키마에 대해 권한 부여를 반복하세요
- 교차 스키마 참조가 있는 뷰: 이전 PostgreSQL 버전에서는 추가 읽기 권한이 필요할 수 있습니다
- Azure PostgreSQL: Azure 인스턴스의 경우
username@hostname형식을 사용하세요 - AWS RDS: 표준
username형식을 사용하세요 - 성능: 대규모 이벤트 처리를 위해 읽기 복제본 사용을 고려하세요
제한 사항
- 분석 쿼리 오버헤드로 인해 프로덕션 데이터베이스에 연결하지 마세요
- 복잡한 교차 스키마 쿼리에는 추가 권한이 필요할 수 있습니다
- 고빈도 이벤트 처리에는 연결 풀링을 권장합니다