From 09f97dafa8ea3cd2d8377212079095f0b6317250 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9D=B4=EC=A2=85=ED=98=84?= <ljh0819@ajou.ac.kr> Date: Thu, 21 Dec 2023 11:58:11 +0900 Subject: [PATCH] Add new file --- camer_client.c | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 camer_client.c diff --git a/camer_client.c b/camer_client.c new file mode 100644 index 0000000..31cf057 --- /dev/null +++ b/camer_client.c @@ -0,0 +1,63 @@ +#include <stdio.h> +#include <string.h> +#include <stdlib.h> +#include <unistd.h> +#include <pthread.h> +#include <fcntl.h> +#include <linux/spi/spidev.h> +#include <linux/types.h> +#include <stdint.h> +#include <sys/ioctl.h> +#include <arpa/inet.h> +#include <netinet/in.h> +#include <sys/socket.h> + +int sock; + +void error_handling(const char *message, int sock) { + close(sock); + perror(message); + fputc('\n', stderr); + exit(1); +} + +int main(int argc, char* argv[]) { + struct sockaddr_in server_addr; + char picture; + ssize_t read_stat; + + if (argc != 3) { + printf("Please deliver IP & Port num as arguments Correctly!\n"); + exit(1); + } + + sock = socket(PF_INET, SOCK_STREAM, 0); + if (sock == -1) + error_handling("socket() error", sock); + + memset(&server_addr, 0, sizeof(server_addr)); + server_addr.sin_family = AF_INET; + server_addr.sin_addr.s_addr = inet_addr(argv[1]); + server_addr.sin_port = htons(atoi(argv[2])); + + if (connect(sock, (struct sockaddr *)&server_addr, sizeof(server_addr)) == -1) + error_handling("connect() error", sock); + + while (1) { + read_stat = read(sock, &picture, 1); + if (read_stat == -1) { + perror("Client Output; reading data from socket error"); + exit(1); + } else if (read_stat == 0) { + break; + } else { + if (!strncmp(&picture, "1",1)) { + system("raspistill -o image.jpg"); + sleep(1); + system("python3 send_email2.py"); + } + } + } + + return 0; +} -- GitLab