Arduino GSM two way communication with server

Hi, i'm trying to make a system where arduino can periodically send sensor data to web server, and also web server can request sensor data from arduino when user click "update button" in web application?

Is it possible to make it done? I only found tutorials how to send data from arduino to web server, and how to retrieve data from server.

How should that communication look? I guess that GSM will make TCP connection to server, and then server would be able to request data from it? Thanks in advance, i really need your help, it's for my college project.

To make requests and process responses means Arduino is a client.

To respond to client requests means Arduino is a server.

It is very possible to make Arduino a server, and has been done in many ways....

How will your Arduino connect to the Internet?

I have SIM868 board, GPRS connection, i don't know should i make it as client or as server :/

Google for "sim868 manual" and start reading about AT command for your device.

Google for "sim868 arduino library" to see if someone has developed code to make the sim868 easy to use. If not, start coding your own library.

Arduino has a GSM library but it is designed to work with their own shield. It might be useful for background information since GSM/GPRS modems are similar. It has examples such as creating a web client and a web server.